3 ms·
Still recall the advice form a classmate asking if I should learn Haskell -- he said "Just learn it because it'll change how you think about programming". I th
by s_dev 8y ago
Still recall the advice form a classmate asking if I should learn Haskell -- he said "Just learn it because it'll change how you think about programming".
I think people should learn it for this exact reason -- it really does change how you program as well as thinking about programming even if on a daily basis you're not writing pure Haskell or Clean or Scheme or whatnot.
Common programming concepts like "iteration", "state", "formal methods", "parrallellism" are concepts that functional programming makes you reconsider from a new perspective.
- dvlsg 8y agoI think one of the most important things I learned from functional programming was how to consider and handle purity and side effects. Not necessarily by wrapping everything in IO monads in my non-functional code or anything like that. But trying to keep bits of business logic in pure functions (where possible, of course) sure makes my job easier.
- Barrin92 8y agoI always think that this attitude is a little bit off. Obviously learning a new paradigm or a new language is great and expanding your horizon is very rarely bad, but I feel a little bit sad about shoehorning Haskell, or functional languages in general, still into this education category. Haskell is a very solid production language and you can put industrial grade software in Haskell out there, and it is in fact used by a fairly serious amount of companies at this point. Instead of just taking Haskell features and porting them into already adopted languages, I'd really like to see more companies just go directly with Haskell, or Clojure, or Ocaml and F#. It does work.
- jmaa 8y agoI'm with you on Functional Languages being solid and useful, I've done quite a lot of work in Standard ML, but the parent's point wasn't only do it for the education, it was at least do it for the education.
- kthielen 8y ago> Instead of just taking Haskell features and porting them > into already adopted languages, I'd really like to see > more companies just go directly with Haskell, [...] Unfortunately there are some places where aspects of the standard infrastructure around Haskell block production application. In particular, we have applications with very hard latency requirements and also with complex type/binding requirements (where a direct structural type system is needed): https://github.com/Morgan-Stanley/hobbes https://github.com/Morgan-Stanley/hobbes