3 ms·
Pure functional programming typically shifts thinking overhead from your brain as the programmer to the compiler (and the very design of the language). After us
by ozataman 14y ago
Pure functional programming typically shifts thinking overhead from your brain as the programmer to the compiler (and the very design of the language). After using Haskell intensively for the past ~4 years, if I go back and write software in Python/Ruby/etc., I realize:
- How annoying it is to have to keep state (of objects, data structures, etc.) in mind for pipelines of computations
- How bad mutability in data structures is and how wonderful it is that in Haskell you NEVER have to worry about any of the data structures changing under your feet
- How nice it is that you can refactor massive codebases fearlessly, thanks to purity and the expressive type system
- How cool QuickCheck and unit testing is in Haskell vs. the mainstream OO languages
- That even Ruby feels lower level and more verbose after Haskell due to a lack of higher-order/first-class functions, among other things
- that if I'm using a dynamically typed language, it sucks that I'll likely get 1 - 10% of the performance I would get if I were using Haskell with no real special tricks
... the list goes on.