personal workshop (lerning) code of haskell