3 ms·
Rust? It's a fine C++ replacement. But it has nothing on Haskell in terms of practical expressiveness. I'll give it another look when it's capable of express
by chowells 6y ago
Rust? It's a fine C++ replacement. But it has nothing on Haskell in terms of practical expressiveness.
I'll give it another look when it's capable of expressing an idea as simple as traverse.
- _huayra_ 6y agoAmen. The real benefit of Haskell is not some hyper performance optimization (when you actually truly need C++ or Rust), but for business critical applications that need to perform fairly well and, most critically, need to not be filled with bugs as it continues to evolve. Whatever amount of money someone might lose by using Haskell compared to Rust or C++ (e.g. in hiring trainers to train your engineers, the overhead in terms of your PaaS bill due to GC or whatever else) is very small compared to the savings: - Compensating a customer for an SLA violation due to some inadequately tested code path that caused an outage - Wasted developer time trying to act like a Human Compiler (e.g. including a bunch of extra code to check type expectations and handle violations gracefully....at runtime) - Wasted developer time trying to understand the dynamic behavior of some code in a PR - Wasted developer time trying to understand old crufty parts of the codebase when you refactor Perhaps it's slow(er) to compile than you might like or not as optimal as C++, but unless you can afford to hire the absolute best Python / Ruby developers available and have some airtight culture of documentation and best practices, I would venture that it's better off to stake one's intellectual property on something that can survive employee churn without that knowledge walking out of the building.
- nicoburns 6y agoRust is also very good for correctness for a lot of the same reasons as Haskell.
- valenterry 6y agoRust is great and borrows many things from Haskell, but it's still very very far from Haskell.
- pjmlp 6y agoDepends, I would certainly not pick Rust over C++ for graphics or GPGPU programming as I don't plan to be one doing the ground work to build something that has the industry acceptance of SYSCL, CUDA, Qt, COM/UWP, MSL. Ironically C++ is closer to Haskell in regards to expressiveness.
- nix23 6y agoBit sad that everyone forgets OCaml when comparing Haskell.
- grzm 6y agoRather than merely lamenting that no one's mentioned OCaml, how about providing something specific about OCaml you think is relevant to contribute to the discussion?
- nix23 6y ago>Rather than merely lamenting Why not read for yourself then? https://ocaml.org/ https://ocaml.org/
- HelloNurse 6y agoFor example, pointers about how OCaml compares to Haskell weak spots: - Basic features (e.g. records, strings, portability) - Undocumented, fragmented and/or half baked libraries - Bizarre and inconvenient "advanced" syntax - Extravagant memory usage
- chowells 6y agoOCaml also can't implement traverse, so....