Haskell Interlude 36 - John Hughes
In this episode, Matti and Wouter are joined by John Hughes. John is one of the authors of the original Haskell Report and talks about why functional programming matters, the origins of QuickCheck testing, and how higher order functions and lazy evaluation is the key that makes functional programming so productive, and so much... #haskell https://kbin.social/m/haskell/t/585043
@jaror Haskell 2010 is pretty simple. What do you imagine is the simpler starting point, if any? If Haskell 2010 is a good starting point, aren't language pragmas / extensions effectively the same as your "language levels"?
Type classes are a big cause of confusion among newcomers. Polymorphism too.
If you want to see how simple a language can really get you should check out Hedy: https://www.hedycode.com/. It even removes string quotes (let alone variables) at the simplest level. Although it is too imperative for my taste.
@jaror @BoydStephenSmithJr Type classes have been in Haskell since forever. There's no Haskell "level" that would avoid them while being a level of *Haskell* instead of some vague/generic "functional programming".
If you want to teach Haskell - you teach Haskell, with its staples like type classes and laziness.
@jaror @BoydStephenSmithJr Understandable... I've thought default rules made that possible.
Anyway, I didn't encounter much problems with type classes while teaching Haskell, not even as a first language. May all of my students were okay with some suspense 😅