Trying to learn Haskell by reimplementing some assignments that I did in the past