35 Comments

How would Functional Programming proponents answer this statement in Code Complete?Also, instead of using Clojure for everything, even things that are expressed more cleanly in more traditional OO syntax, how about using Clojure for the data processing bits where it is cleaner, and using Java or some other OO language for the other bits. Polyglot programming instead of multiparadigm programming with the same language for all parts of the program. (Sort of like how most web applications use SQL and OO for different layers.) ?

How would Functional Programming proponents answer this statement in Code Complete?Yes, you're right. I did assume that Functional Programming favors reusable functions operating on the same simple data structures (lists, trees, maps) over and over & actually claims that this is a selling point over OO. See Stuart Halloway (a Clojure FP proponent) here saying that "the over-specification of data types" is "negative consequence of idiomatic OO style" and favoring conceptualizing an AddressBook as a vector or map instead of a richer OO object with other (non-vectorish & non-maplike) properties and methods.