module Main where import TimeFlies import qualified RecursiveDescent as RD import qualified ShiftReduce as SR import qualified CKY rd = RD.recog timeFliesNoLR . words sr = SR.recog timeFlies . words cky = CKY.recog timeFliesCNF . words test s = do let xs = words s putStrLn "" putStrLn $ show s putStrLn $ "recursive-descent: " ++ show (rd s) putStrLn $ "shift-reduce: " ++ show (sr s) putStrLn $ "CKY: " ++ show (cky s) putStrLn "" main = do test "time flies like an arrow" test "an flies like time" test "an flies arrow" test "an"