3 ms·
No, he’s right. he’s speaking only of what is required and what is provided, all else being equal. The what and the why are different. If the function started
by draw_down 3y ago
No, he’s right. he’s speaking only of what is required and what is provided, all else being equal. The what and the why are different.
If the function started to provide different results for the same arguments, that’s different from what he’s talking about and would be a breaking change.
Worrying about the internals of the function is a violation of encapsulation. We care what we provide and what we receive back.
- one-more-minute 3y agoI mean, the article's logic is effectively that you can break code without the type system helping or warning you. I don't think Hickey would disagree with this – it's arguably a point in his favour.
- joeatwork 3y agoI think the poster means that adding null is a big, substantial change to the interface - if you have a function that used to not make sense with a null argument, and then it suddenly does make sense with a null, then the function has changed in a way observable to callers.