Unfortunately this is an opinionated piece with foul language and it is a bit offensive. Sandy should take into account that Elm is created by one person pretty much (Evan Czaplicki) who created it in his PhD thesis and has been maintaining it since. So it's someones baby still, and they might be offended. It is a remarkable for one person to create a language, runtime, repl, debugger, compiler to another quirky lan…
BTW, why lots of people think it's very wrong and immoral to criticize inanimate pieces of technology in rude and offensive language? Political correctness?
Elm is Wrong
101–110 of 218 posts
Re: Elm is Wrong
#102Earlier quoted context omitted.
BTW, why lots of people think it's very wrong and immoral to criticize inanimate pieces of technology in rude and offensive language? Political correctness?
Whenever you feel the urge to use, or see others using the term political correctness , try mentally substituting it with behaving respectfully . The exercise can be enlightening.
I could just as well suggest you mentally substitute the phrase helping the needy with kicking puppies whenever you encounter it.
Re: Elm is Wrong
#103Earlier quoted context omitted.
Language wise scala.js[1] with cats[2] or scalaz[3]. The FRP story there is unfortunately more complicated. 1| https://www.scala-js.org/ 2| http://typelevel.org/cats/ 3| http://scalaz.github.io/scalaz/
You can go with the Diode [1] library for an Elm/Redux- like architecture. And with that you don't need to all the way down to cats or scalaz (although you sure always can if you want to). [1] https://github.com/ochrons/diode
Re: Elm is Wrong
#104This post starts off with an abstract goal - "use a custom type as a dict key", and then goes off down a rabbit hole trying to create typeclasses and make it work. This is despite prior knowledge that Elm has chosen not to implement type classes. The line from Evan, Elm's creator, has always been along the lines of "show me a concrete actual use-case that you can't do without typeclasses", this article fails to clear…
> The line from Evan, Elm's creator, has always been along the lines of "show me a concrete actual use-case that you can't do without typeclasses", this article fails to clear that fairly low bar. Translation: "I will never add typeclasses." There is no concrete actual use-case that is impossible to implement without typeclasses. What typeclasses make possible is an abstraction over concrete actual use-cases. That is…
Re: Elm is Wrong
#105I'm not particularly interested in Elm, but basically this post is about one problem in the language. One. This doesn't make the language a pile of garbage as the author seems to let you think. I'm a Python programmer. I fully expect dict keys to be able to be arbitrary objects. But after coding a lot in JS, I realized I could live without it. It's nice, but it's not a show stopper if I don't have it. Same goes here.…
> I'm a Python programmer. I fully expect dict keys to be able to be arbitrary objects. I'm a Python programmer too, and I also fully expect dict keys to be able to be arbitary objects, and I get really frustrated with the fact that they can't be arbitary objects. They have to be hashable objects, and the hash function refuses to hash certain objects that it has decided aren't allowed.
If you have a list or dictionary you want to use a key, you can convert it into a tuple which would make it immutable.
If you don't care about performance for larger collections you could just use a list instead of a dictionary, which does not require hashing. Changes to the original mutable object will also be reflected in your list.
Re: Elm is Wrong
#106It really seems like Elm should implement typeclasses. I don't know Elm, but I can't really imagine writing serious Haskell programs without them, and I've seen multiple Elm-related complaints today that were either directly lamenting their absence or lamenting difficulties that they would have solved, trivially.
Re: Elm is Wrong
#107Earlier quoted context omitted.
Whenever you feel the urge to use, or see others using the term political correctness , try mentally substituting it with behaving respectfully . The exercise can be enlightening.
That doesn't seem like a useful exercise because political correctness does not always equate to behaving respectfully, even if there is overlap (i.e. most respectful behaviour is politically correct and vice versa). I could just as well suggest you mentally substitute the phrase helping the needy with kicking puppies whenever you encounter it.
Could you provide an example of when it doesn't?
Re: Elm is Wrong
#108Unfortunately this is an opinionated piece with foul language and it is a bit offensive. Sandy should take into account that Elm is created by one person pretty much (Evan Czaplicki) who created it in his PhD thesis and has been maintaining it since. So it's someones baby still, and they might be offended. It is a remarkable for one person to create a language, runtime, repl, debugger, compiler to another quirky lan…
Actually, you can... as long as you properly isolate the control. Here is a prof of concept that does just that:
Re: Elm is Wrong
#109Earlier quoted context omitted.
So my point was actually about the specifics of picking up a language to do a new project , and then complaining about it. (Hence my example of writing a serious book in a language you don't know.) I think you really go into superlatives here. It's not fair for you to say "15 seconds", for example. 15 seconds is how long you've been reading this comment. (I just timed myself, okay maybe 10-13 seconds.) I also think t…
You seem to miss the point. Elm is particularly easy to pick up for people coming from Haskell. Maybe not in 15 seconds, but 15 minutes is a totally reasonable estimate. The author can without doubt write a large project in Elm. His complaints were about missing the conveniences of abstraction Haskell-like languages provide, and he is more than qualified to talk about it. Decomposing records into tuples of comparable…
Well, all right. In general I would say that is not true even for languages that are close, but there are exceptions and I suppose I can take your word for it.