3 ms·
In my case, I am already proficient in Haskell, so I do not have to learn it. Using the technology I already know means not blowing my "novelty budget". As for
by lemonwaterlime 2y ago
In my case, I am already proficient in Haskell, so I do not have to learn it. Using the technology I already know means not blowing my "novelty budget".
As for benefits, I get the following:
- strong, static typing via the Hindley-Milner type system
That means any changes to my logic and type signatures have to be addressed immediately everywhere.
- type-safe, composable everything
I want as many issues as possible to be caught at compile time. Ideally, I would have no runtime errors. It is possible to get close to this ideal with Haskell.
- terse, expressive language
Less code to read per concept expressed plus a strong type system means that maintenance and refactoring is a breeze. In fact, I can fearlessly refactor. That means once I get everything up and running, the codebase is stable even when I change things. Thus, I can actually focus more on the product and customer needs.
Combining all of the above with other stable and maintainable technology choices makes the entire app architecture easy to maintain over time as well.
You always have to consider the technology so you can properly architect your application and its dependencies.