> I mean this sounds like a lot of buzzwords, which is usually the answer I get when I ask why I should use Haskell.
That's what makes it a hard sell I guess?
> What would it do to make my life easier?
It gives those advantages which I'll explain more in a moment everywhere, meaning you can depend on those things in your and others code.
Similar to how it's difficult to explain why it's insanely useful that emacs is plain text everywhere.
Now let's see if I can demonstrate how just one of these could make your life easier... Local reasoning.
A good definition:
> Local reasoning is a property of some code wherein the correctness of the code can be inferred locally under specified assumptions, without considering prior application state or all possible inputs.
Give me a second to think up a good example. Have a desired language or code example in mind that doesn't use local reasoning?
Most of the code I write needs to take in a chunk of floating point data a few thousand points long, do a lot of maths on it, and emit it back out again, as quickly as possible, over and over.
That's what makes it a hard sell I guess?
> What would it do to make my life easier?
It gives those advantages which I'll explain more in a moment everywhere, meaning you can depend on those things in your and others code.
Similar to how it's difficult to explain why it's insanely useful that emacs is plain text everywhere.
Now let's see if I can demonstrate how just one of these could make your life easier... Local reasoning.
A good definition:
> Local reasoning is a property of some code wherein the correctness of the code can be inferred locally under specified assumptions, without considering prior application state or all possible inputs.
Give me a second to think up a good example. Have a desired language or code example in mind that doesn't use local reasoning?