module tree import StdEnv, StdDebug import Data.Maybe, Data.List from Data.Func import $ import System.CommandLine, System.GetOpt import Smurf import SmurfParse import LaTeX Start w # (_,f,w) = fopen "reverse-ward.smf" FReadText w # (pgm,f) = readFile f # (ok,w) = fclose f w # (Just pgm) = parse [c \\ c <-: pgm] # tree = devtree pgm # tree = trace (toString tree +++ "\n") tree = toString (toLaTeX tree) where devtree pgm = fromJust (tree pgm zero { zero & input = [Lit "xy"] } listIO) readFile :: !*File -> *(!String, !*File) readFile f # (end,f) = fend f | end = ("", f) # (s,f) = freadline f # (ss,f) = readFile f = (s +++ ss, f)