Serious question: there was a time, a few years back, when the Haskell-ish languages seemed poised (finally!) for a breakthrough. Some of that was due to an association between Haskell and cryptocurrency, but there was also a sense that people were *ready* for Haskell’s particular vision. (I’m thinking of, say, PureScript as an alternative to both JavaScript and Elm)
That seems to have fizzled. Have there been writeups as to why?
@marick I'll be curious what you find out about pure functional languages.
I'm making my second go at learning haskell. I did #AdventOfCode in Haskell last year. In preparation for doing it again this year, I'm dusting off the VSCode environment and doing a few small problems.
I successfully used monads to carry state through a calculation. It was really cool. And it took me a week off-and-on to wrap my head around it. If I'd been doing it for years and it was just another tool in the belt, it would be an awesome tool to have.
For me, the mental shift from Java in my day job to Haskell is huge, and takes work. I can see why people don't use functional languages without a strong reason. And I've never been at a company where management provided (or allowed) a strong reason.
@bwbeach What I learned about statically-typed functional languages I put in https://leanpub.com/outsidefp until I gave up. I was betting that Javascript -> Elm -> PureScript would be a plausible progression for people doing front ends. If it worked out, I’d have a book perfectly poised to serve those people.
I gave it up when I realized PureScript was going to stay a niche language and PureScripters were fine with that. So all the content is Elm (no monads). And Elm seems to have collapsed
@bwbeach Re: monads. Elm has all the usual classes (lists, Maybe, Either, etc.) Each of them has a `map` function and an `andThen` (equivalent to `bind` if I remember right). People get used to “container-like” datatypes having those functions, but they’re never told they’re dealing with functors and monads. As a recovering abstractionist, it still bugs me that the commonality isn’t made explicit, but does it really matter?
@bwbeach I tend to start as a fan-boy about languages, then become hypercritical, and finally (I hope) settle down to a sensible attitude. Just to warn you I’m in the first stage re: Swift.
But if you’re a language geek, it’s an interesting example of adopting some of the newer ideas in language design and applying them to a language that needs to look not-too-unfamiliar.