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"