shell-like (systems) programming in Haskell