Just some experiments with compiler constructions, in Haskell and Prolog