module AST where data Cmd = Next -- > | Prev -- < | Incr -- + | Decr -- - | Print -- . | Input -- , | Loop [Cmd] -- [...] deriving (Int -> Cmd -> ShowS [Cmd] -> ShowS Cmd -> String (Int -> Cmd -> ShowS) -> (Cmd -> String) -> ([Cmd] -> ShowS) -> Show Cmd forall a. (Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a $cshowsPrec :: Int -> Cmd -> ShowS showsPrec :: Int -> Cmd -> ShowS $cshow :: Cmd -> String show :: Cmd -> String $cshowList :: [Cmd] -> ShowS showList :: [Cmd] -> ShowS Show) -- Criando tipo AST pela facilidade de leitura e manutenção type AST = [Cmd]