Abstract While programmers tend to divide themselves into communities along language or paradigm lines, the reality is that the OO and FP communities have a ...
I like this because it had moments of uncomfortableness. Iâm just the other side of this where I like FP more than I like OO, but Iâve come to the same conclusion. Hybrid OO and FP is the future, most languages are embracing it, but the communities are somehow still ideologically separated. Until that gap is closed there will be much pain for all of the work poured in to fill the gaps between these two approaches.
To nit pick, his consistent criticism of FP is that it exposes internal data structures which makes it brittle to maintain and extend, but I think thatâs looking at FP like procedural programming, which it is similar to if you throw out immutability and the focus on tightly scoped pipeline steps instead of modeling layers. The data as an interface is entirely more flexible than an object interface and can provide verifiable guarantees and versioning, just look at Clojure spec! I donât understand this âobject in the largeâ obsession as anything less than system level thinking. Yes, you can draw a box around these data structures and consider their interface as a static part of the program. But calling them âclassicalâ objects and calling back to Alan Kayâs definition thinly hides the fact that âmodernâ objects are dead, but long live OO!
Modern FP has been redefined favorably as well, but the part of this talk that made me uncomfortable was seeing it come from the other (still predominate) end and seeing my own arguments in that light.









