Use point-free style
Solve Problem 50 in Haskell, very slow
Simplify code for first consecutive primes
Use splitAt instead of list difference
Fix comments
Fix traverse logic
Swap guards for clarity
Fix traversal termination condition
Remove unnecessary upper and use simpler initial arguments
Rewrite Problem 50 with a much faster algorithm
Reverse the finite list instead of using a range
Reorganize code
Simplify code
Add data file for Problem 67
Solve Problem 67 in Haskell
Solve Problem 51 in Haskell, too slow
Rewrite Problem 51 with a faster algorithm

Instead of trying all masks for each prime, check if there is a prime masked by the mask which has the specified number of primes in its family.
Add type annotations to functions for much clarity
Revert to older algorithm