So, I was playing around with python trying to calculate the probability of getting a crit (3 threes out of 6d4).
I noticed that the type I created to store the results obeyed the rules of a monoid, which made me very happy and interested in rewriting the code in Haskell.
Not only did I manage to write the same implementation in less lines of code, but I also managed to include some extra functionality and make the code a lot prettier. I'm a bit happy about it