> Go ask a Haskell developer and the first reaction you will get is probably "wait, you were running getData inside the original function?!"
Haskell developer here, this was indeed my first reaction :P
Haskell developer here, this was indeed my first reaction :P
Abstraction and composition are great to surface the main characteristics of your algorithm. A compiler then can take those characteristics and verify if they make sense. Different compilers can do that in different amounts, and the Javascript one does the absolute minimum possible. On this case, you get no safety, just more complex code.
Go ask a Haskell developer and the first reaction you will get is probably "wait, you were running getData inside the original function?!"