https://serokell.io/blog/rust-vs-haskell
https://serokell.io/blog/rust-for-haskellers
https://gist.github.com/paf31/9c4d402d400d61a49656
https://hasura.io/blog/from-zero-to-hipster-haskell-in-production-97ea99d90c3b/
https://crypto.stanford.edu/~blynn/haskell/brain.html
http://learnyouahaskell.com/chapters
https://wiki.haskell.org/Haskell_Tutorial_for_C_Programmers
https://braindump.jethro.dev/posts/haskell/
https://markkarpov.com/post/haskell-vs-ocaml.html
https://wiki.nikiv.dev/programming-languages/haskell/
There are so many discussions about how and why haskell. In fact, here’s a good place to see it being thrashed out: What is haskell actually useful for?
- Purely functional: We could reason about our entire program, and the code reflected our reasoning almost exactly.
- Concise code: Write code now, refactor soon. Smaller code lets you refactor larger portions easily (and hence frequently).
- Robust code: Static typing with type inference, and a smart compiler (The Glorious Glasgow Haskell Compilation System).
- Testing: As waxed poetic by everyone, the type system dramatically reduces a huge class of unit tests. Quickcheck makes another class of tests quite a breeze, by automatically generating test cases for assertions that you make about your functions. Most of what remains is best tested manually anyway (eg: IO related failures).
- **Concurrency with IO: **GHC’s threading abstractions and IO manager, makes it easy to think about concurrently executing computations and gives you all the benefit of event-based asynchronous runtimes like node. GHC has non-blocking IO (like node), supports real multiple threads and multicores naturally (unlike node) and works using events underneath (like node). It’s not even a fair war.
- Rich libraries: Haskell libraries are extremely easy to integrate and very very easy to just dig in and modify safely for your own use (and maintain forked versions).
- Deployment: Private cloud deployments for Haskell code becomes really easy, because all library dependencies can be statically-linked. This makes version control and deployment a one step process.
https://yager.io/Distributed/Distributed.html