3 ms·
Haskell is hard, mainly because it's normally not a first language, and the first language people learn probably has Algol-like syntax (e.g. C, Java). I think E
by Cieplak 8y ago
Haskell is hard, mainly because it's normally not a first language, and the first language people learn probably has Algol-like syntax (e.g. C, Java). I think Erlang is a bit easier to learn due to having fewer features, and for me was the gateway drug to Haskell. It let me learn to program with recursion instead of loops, and pattern matching instead of `if`s. The type system is the best part of Haskell, but unfortunately it makes it very easy to get stuck when starting out ("IO String" vs "String", "ByteString" vs "Text"). It's well worth the investment, though, to get a tool that lets you develop concise code like Python/Ruby but gives you strong guarantees of correctness. Also worth noting the incredible ecosystem of libraries and tooling, like stack and intero:
- https://docs.haskellstack.org https://docs.haskellstack.org
- https://commercialhaskell.github.io/intero/ https://commercialhaskell.github.io/intero/
- rs86 8y agoI don't think Haskell is hard, but that's once you know it. It takes a lot of insights until you can see that it is really simple. A lot of code can look unreadable but that's just until you become familiar with the idioms.
- vapourismo 8y agoI wouldn't really consider stack to be a great tool. There is Stackage which may be useful but the tool itself falls apart quickly when used to compile more than a single package executable. That being said, one should have looked at these: - cabal Nix-style builds - ghicd for continuous type-checking - stylish-haskell for light code formatting - brittany for slightly more invasive code formatting - hlint for linting