Example of arithmetic expression parsing, with decoding of semantic
values (ie it gives a list of possible results of computation).

BUT: it runs the computations under a monad. In this example, certain 
cases of addition fail, which are caught and shown as zeros.

"make run" to run the test case.

For Hugs, load up Hugs.lhs - it doesn't produce graphs, and has easy entry 
point "test :: String -> IO ()