New ask Hacker News story: Languages you must know #9 (Haskell)

Languages you must know #9 (Haskell)
5 by daly | 0 comments on Hacker News.
Haskell. You knew it was coming. Types have taken over the programming world. Maybe not your corner. Not yet. But it's coming for you. Types are a "programming language for data". Usually data was just something that the procedural programs pushed around, shaping, sampling, and mangling at will. Since the compiler and the programming language had no information about the shape of data there was no way to detect data-related errors. Haskell is one of many different attacks on the data-shape problem. Haskell also prevents "drive-by" data damage, forcing program fragments to be "pure functions" that don't create side-effects. Every time you call a function with the same input you get the same output. Haskell programming changes the way you think about data, which is one of the key ideas in "why" and "what", which we are promoting. In addition, Haskell is one of the "Harper Trinity" languages. Bob Harper (CMU) points out that there are 3 different ways to express things; Proofs, Category Theory, and Programming. Any idea in one has its counterpart in the other two. https://ift.tt/1v3AB6X Haskell features in the MIT "Programming with Categories" course. https://www.youtube.com/playlist?list=PLhgq-BqyZ7i7MTGhUROZy3BOICnVixETS Haskell really forces discipline in programming. It reshapes your thinking. Haskell is a 'must know' language.