Live data from Hacker News

Why I’m Leaving Elm

lukeplant.me.uk

111–120 of 450 posts

Re: Why I’m Leaving Elm

#111

I haven't used Elm, so I have no horse in this race. But I feel like I've been hearing these stories for a while, that it started out as an interesting and useful language but kept having features removed in new versions. Since it's open-source, and apparently there are existing projects in older versions of Elm that would effectively be held hostage by these feature removals, I'm amazed there hasn't been a (well-kno…

They could call it pine.

Re: Why I’m Leaving Elm

#112

Arrogant is the most accurate word to describe Elm and its leadership. I tried to use Elm in production between 0.14 and 0.18 versions and it was fun and mind expanding experience. I'm truly grateful that I've used it because it introduced a lot of functional stuff to me. But I no longer use it myself or recommend it for any serious work. Breaking changes were negligible in the beginning. But I got fed up with rewrit…

isn't this the exact problem that tabs solve?

[deleted]

Re: Why I’m Leaving Elm

#113
I believe Elm took some major missteps. Despite doing so many things right with the initial designs (and still one of the best designed front-end experiences) it never grew much beyond the early adopters and it basically remained a fun hobby language.

I criticized the basic lack of communication and the infrequent updates in r/elm (I believed these infrequent updates were going to kill the momentum of Elm). I was concerned that it made the language seem stagnant.

Immediately, after posting it was clear it was a major concern by others as well. So what did Evan do with that criticism? He spent the opening part of his European talk mocking it [0].

I didn’t take it personally, but it illustrated the kind of mindset Evan has. A good leader would have asked questions about why many feel that way and would have instituted a process for more frequent updates. It became clear to me, outside of being brilliant at designing Elm he is not the person to take it to the next level of adoption. If it’s not moderately adopted it won’t make sense recommending it for any production project, even if it does many things right.

To me it feels like (sadly) Elm will just be a hobby project despite what it could have been.

[0] https://youtu.be/uGlzRt-FYto

Re: Why I’m Leaving Elm

#114
I gave up on Elm years ago. It's kind of funny, I paid for the Elm in Action book that was partially written like 6 or 7 years ago. I got an email last week that it's finally finished. It's hilarious that the book has taken this long, probably because they had to rewrite it every release.

Re: Why I’m Leaving Elm

#115

Earlier quoted context omitted.

What do you mean?

Tabs for indentation, spaces for alignment. It is called "smart tabs" and good text editors already implement it.

If you use spaces, you can check that files are okay by forbidding \t.

If you use tabs, you can check that files are okay by forbidding /^\t* /.

If you use tabs for indentation, spaces for alignment, ??????

Re: Why I’m Leaving Elm

#116
post #91
post #31

Earlier quoted context omitted.

Not only is it nearly as high as Haskell, the PureScript guide hasn't been updated in years and is wildly out of date. You have to go searching for an unofficial rewrite, and those are incomplete as well.

On the other hand, you can pretty much just learn Haskell to learn PureScript. All of the differences fit onto a single small docs page: https://github.com/purescript/documentation/blob/master/lang...

Nope, not the same. You still need to learn how PureScript does things.

Also, these days no one want to learn Haskell just for sake of building UI. Just do it in JavaScript or TypeScript, far far far easier pill to swallow.

Yes I learned Haskell, Elm, and Rust

Re: Why I’m Leaving Elm

#117

Earlier quoted context omitted.

The learning curve to PureScript is way higher than Elm. Is that not that obvious?

It is, but the community is pretty awesome and helpful, and anyone who knows Elm and takes the time to read at least one introductory Haskell book should be able to get productive pretty quickly.

Still lost many hours for asking and debugging, if it ever get answered. Companies don't care, business don't care. They care about shipping feature, easy to find developers. Try explaining that to your PM or boss. In the end money talks.

Re: Why I’m Leaving Elm

#118
This came at an awkward time. I just bought Richard Feldman's book "Elm in Action" a few days ago and was working through the first 2 chapters. This has made me reconsider my intention use Elm in my startup.

Having features randomly fail on me and having to rewrite an entire library in elm vs calling out to js means less time creating features that matter to my customers! I was drawn to elm as a way of spending less time debugging my own code in production. Part of that overall strategy means pulling in tested, working code whether it's also elm or js.

Some of what I see here could easily relegate elm to being a toy language; a damn shame considering how good it is as far as strongly typed functional languages to js go.

Re: Why I’m Leaving Elm

#119

Earlier quoted context omitted.

The learning curve to PureScript is way higher than Elm. Is that not that obvious?

Do you think it is harder to learn than Ocaml/ReasonML though? I think there is a good free introductory book [1], a welcoming community [2], the language and ecosystem are quite stable nowadays and there's good tooling (now that there's the Spago package manager). [1] https://leanpub.com/purescript/read [2] https://discourse.purescript.org/

Absolutely.

The 'Pure' is the problem here.

Re: Why I’m Leaving Elm

#120

Earlier quoted context omitted.

It doesn't really solve the problem. How do you format this code with tabs: function name(arg1, arg2, arg3 The other issue is with maximum line length. If you have a maximum line length of 80, do tabs count as 2 spaces, 4 spaces, or 8 spaces towards meeting that line length? Using spaces ensures that it at least looks consistent, independent of your tabstop settings.

> It doesn't really solve the problem. How do you format this code with tabs: function name(arg1, arg2, arg3 Just wondering… do you realign the parameters every time you rename a function?

If the editor would support elastic tabstops you could do:

     function name(arg1, arg2,
     arg3)
Post reply on HN