I do find it funny how many comments have ignored your statement “Just so you know, I’m NOT taking any of your promises at face value. I’m going to have to see it to believe it.” And then assume that Functional programming is the silver bullet.
I personally still sit on the side of its not OO’s fault, we are just doing it wrong … especially when big companies were promoting terrible practices … remember JEE.
I think I’d still like a hybrid where Immutability is default, functions can live with their data easily, and with constructors on steroids where you can easily reject invalid data being passed in (like Guava Preconditions), that works nicely with functional style operations like map/reduce/filter.
Someone will probably just say thats Scala …