6 - Transform code involving standing moves into two sequential
7 blocks: setup and teardown. Then establish proper sequencing
8 between them. The teardown block consists only of kills.
10 - Implement sequencing.
21 main = do t <- parseFile "src/edu/berkeley/fleet/f0/f0.g" "contrib/demo.f0"
23 putStrLn $ show $ coalesceFlatHeadlessNodes t
25 putStrLn $ join "\n\n" $ map show $ ((fromTree $ coalesceFlatHeadlessNodes t) :: [Def])
27 compiled <- return $ join "\n\n" $ map compileDef $ ((fromTree $ coalesceFlatHeadlessNodes t) :: [Def])
29 writeFile "compiled.fleet" ("// compiled with f0\n\n"++compiled++"\n")