That’s a good analogy. Functions calling other functions is similar to classes subclassed from other classes. Changes to the lowest-level function can have undesirable rippling effects. Changes to the base class behaviour can also have undesirable consequences. That’s why your base class behaviour should never have breaking changes. If it does, then you’ve designed your class hierarchy incorrectly.

Good OOP requires good and thoughtful design. Good FP does, as well. There is no room for sloppiness in programming.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store