functionality draft in quasi-haskell