
patrick,
i was wondering if parts of the code could be more abstract.
(i'm no genius in that area)
but how about using some high order function for the numeric literal or the
alpohanumeric literal?
maybe a lexer is a hand-wise algorithm, but maybe it can be streched somehow
:-)
comments?
best regards
haroldo
2009/5/8 Patrick LeBoutillier
Hi all,
In the process of writing an SQL parser I started by writing a lexer. The code can be found here: http://hpaste.org/fastcgi/hpaste.fcgi/view?id=4736#a4736
You can run it like this in ghci:
Prelude SQL.Lexer> runLexer "select * from TABLE order by FIELD" [Token Reserved "select",Token Space " ",Token Operator "*",Token Space " ",Token Reserved "from",Token Space " ",Token Identifier "TABLE",Token Space " ",Token Reserved "order",Token Space " ",Token Reserved "by",Token Space " ",Token Identifier "FIELD"]
Since this is pretty much my first Haskell project over 10 lines long, I'm looking for some feedback of any kind. Ultimately I would like to use this lexer to build a functional SQL parser using Parsec.
Thanks,
Patrick
-- ===================== Patrick LeBoutillier Rosemère, Québec, Canada _______________________________________________ Beginners mailing list Beginners@haskell.org http://www.haskell.org/mailman/listinfo/beginners