4 ms·
Yes, I discussed those in another comment: https://news.ycombinator.com/item?id=10290874 https://news.ycombinator.com/item?id=10290874 In this comment I just d
by lambda 11y ago
Yes, I discussed those in another comment: https://news.ycombinator.com/item?id=10290874 https://news.ycombinator.com/item?id=10290874
In this comment I just discussed Go, since that's what the parent comment mentioned.
Haskell and OCaml are both great languages, but to a lot of people, they come off as much more "academic" or "ivory tower," and require a lot more effort to learn to use effectively for people who are not used to functional programming.
Couple that with the fact that they still use GC, so are a lot harder to get consistent low-latency performance as well as being a lot more difficult to use for any applications where you need to embed them in other applications, and they just don't offer enough of a reason to move to them over the current combination of "Python for high-level stuff, C or C++ for low-level, performance sensitive stuff".
Rust, on the other hand, promises to be effective for the low-level, performance sensitive stuff, is good for embedding in other languages, offers the additional benefit of giving statically checked memory safe multithreading with shared mutable data structures, and provides a powerful static type system for effective programming in the large.
- runeks 11y ago> Haskell and OCaml are both great languages, but to a lot of people, they come off as much more "academic" or "ivory tower," and require a lot more effort to learn to use effectively for people who are not used to functional programming. I think the problem is that people who are used to C++ and Python approach Haskell as if it were just another language, in that category of languages. You need you learn some new stuff in order to really understand Haskell, but that's hardly a fault. I actually think non-programmers would have an easier time learning Haskell than experienced programmers. There really isn't anything inherently difficult in Haskell. It just requires a different approach. It can be annoying to write Haskell programs sometimes, because it's so hard to get it to just compile. But that's the entire point: the fact that the compiler can do so much when we restrict ourselves to pure functions. It also forces us to figure out exactly what our program needs to do, before we can implement it, rather than build on top of proof-of-concepts, as is typical with Python.
- kazinator 11y ago> It also forces us to figure out exactly what our program needs to do, before we can implement it. Note that the pronoun "it" in your sentence could easily have antecedents such as "assembly language" or "Brainf*".