added some slides
[cc1516.git] / lex.icl
diff --git a/lex.icl b/lex.icl
index 21a29e9..ce642a1 100644 (file)
--- a/lex.icl
+++ b/lex.icl
@@ -1,7 +1,7 @@
 implementation module lex
 
 import Control.Monad, Control.Applicative
-import Data.Either, Data.Func
+import Data.Either, Data.Func, Data.Void
 from StdFunc import o
 import StdBool
 import StdList
@@ -9,6 +9,7 @@ import StdChar
 import StdString
 
 import yard
+from AST import :: Pos(..)
 
 :: LexItem
        = LexToken Int TokenValue
@@ -30,7 +31,7 @@ lexProgram line column = lexToken >>= \t->case t of
        (LexItemError e) = fail <?>
                PositionalError line column ("LexerError: " +++ e)
        (LexToken c t) = lexProgram line (column+c)
-               >>= \rest->pure [{line=line, column=column, token=t}:rest]
+               >>= \rest->pure [({line=line,col=column}, t):rest]
 
 lexToken :: Parser Char LexItem
 lexToken =