Learn as you go haskell implementation of a column store db