Re:Is Haskell the right language for teaching functional pro...
by harpocrates on Monday October 16, 2017 @07:22PM
(#15487464)
I would hardly identify lazy evaluation as a core feature of functional programming. It definitely forced Haskell not to compromise on purity but, as SPJ himself has pointed out, that may be the only strong thing it has going for it[0]. Currying is also nice, but I'm still not sure that is _core_ to FP.
What Lisp is really missing from an FP perspective is purity. In fact, maybe a pure variant of Lisp would be perfect for teaching.
[0]: https://www.microsoft.com/en-us/research/publication/wearing...
Re:Is Haskell the right language for teaching functional pro...
by kazinator on Tuesday October 17, 2017 @12:35AM
(#15488688)
Purity isn't missing. It's what you have until/unless you introduce/allow impurity into your code.
How can you even teach what purity is, if it is enforced?
"Bad things could happen, take my word for it?"
Re:Is Haskell the right language for teaching functional pro...
by BoiledCabbage on Monday October 16, 2017 @07:47PM
(#15487585)
Isn't Scheme pretty darn close to a pure and clean version of Lisp? Which is why it was chosen as the language of SICP?
If you want a more typical functional language without type declarations or monads, there's SASL. It's an ancestor of Haskell, but I don't know of any implementation which runs on modern hardware. Interestingly, SASL was once used to write an operating system.