decided to go with common lisp and use parser
combinator a la haskell.