Hacker News new | ask | show | jobs
by Peaker 5124 days ago
I'm using Haskell because I'm more productive in it than in any other language. The code is elegant and concise, and is of high quality.

When I want to make sweeping changes, I can trust the compiler to remind me everything that needs to be fixed.

I barely have to test anything, because if it compiles, more than 90% of the time, it will Just Work. When I do test, Haskell makes testing far easier, with packages like QuickCheck and its rich types.

I don't write performance intensive code, but when I wrote this kind of code in Python, I still had to battle with performance problems a lot. In Haskell, performance is great out of the box and I rarely have to deal with that.

Haskell gives me useful guarantees that make mechanical refactorings so much easier, leading to more code quality.

Haskell is lazy allowing me to write more modular code, and enabling a lot of useful techniques (See [1]).

Haskell gives me access to state of the art techniques in various fields (accelerate, safe transactional memory, nested data parallelism, vector and list fusion, ...).

Haskell expands my mind, and makes me understand code and computation more deeply.

There are so many reasons to use Haskell...

There are a few reasons not to use Haskell, but the most major one, in my opinion, is the initial difficulty of learning it.

Overcoming that difficulty is well worth it for career programmers, in my opinion.

[1] http://www.cs.kent.ac.uk/people/staff/dat/miranda/whyfp90.pd...