module lex :: Token //Values = IdentToken String // Identifier | NumberToken Int // Integer //Keywords | VarToken // var keyword | VoidToken // void keyword | ReturnToken // return keyword | IfToken // if keyword | ElseToken // else keyword | WhileToken // while keyword | TrueToken // True keyword | FalseToken // False keyword //Single Characters | BraceOpenToken // ( | BraceCloseToken // ) | CBraceOpenToken // { | CBraceCloseToken // { | SquareOpenToken // [ | SquareCloseToken // ] | CommaToken // , | ColonToken // : | SColonToken // ; | DotToken // . | PlusToken // + | DashToken // - | StarToken // * | SlashToken // / | PercentToken // % | EqualsToken // = | LesserToken // < | BiggerToken // > | ExclamationToken // ! | AmpersandToken // & | PipeToken // | | SingleQuoteToken // ' Start = "Hello World!\n"