1. 13

  2. 3

    —records are just like C structs!

    Anyone who has coded Java knows how painful it is to have a function return multiple values. I have found that people either get lazy and try to write around it or they go full Enterprise and pollute the code with tons of extra classes.

    I much prefer languages with support for tuples (like Go, python, and our favourite FP languages).

    To actually get data out of a tagged union, we have to pattern match on it providing a case for each possible constructor

    And here is a favourite feature of Haskell. Well, you will never see a null in that language but you will see plenty of Nothing. Maybe’s Jail is one of my favourite features that I wish could somehow be shoved in C/C++/Java/C#. The Optional class is hardly effective enough since you can always escape.