simonmar 2003/02/12 04:20:09 PST
Modified files: (Branch: simonm-hackery-branch)
happy/alex/mk boilerplate.mk version.mk
happy/alex/src AbsSyn.hs CharSet.hs DFA.hs Info.hs
Main.hs Makefile NFA.hs Parser.y Scan.hs
Scan.x Util.hs
Added files: (Branch: simonm-hackery-branch)
happy/alex/src Output.hs alex.sh
happy/alex/templates GenericTemplate.hs Makefile
Removed files: (Branch: simonm-hackery-branch)
happy/alex/src Alex.hs
Log:
We're at another bootstrapping fixed-point.
Highlights:
- Table compaction, stage 1. Tables are generated in a similar
way to flex, which happens to be similar to the way that Happy
does it (and indeed Bison). Binary size for Alex's own lexer
is reduced by 60%; this is without using any GHC tricks yet,
and without using any of the extra table compaction techniques
that flex uses (eg. character equivalence classes).
- The lexer engine is now appended to the generated file, by
copying a template (i.e. the same thing that Happy does). This
means you don't have to worry about finding a copy of Alex.hs or
importing it in your code.
Unfortunately I've had to restrict each script to contain only
a single lexer specification. This makes things much easier:
the template can refer to the tables directly, without having
to pass them around. It shouldn't be a problem in practice,
since you can still have multiple alex lexers in separate modules
in the same program.
Revision Changes Path
1.1.1.1.2.1 +2 -2 fptools/happy/alex/mk/boilerplate.mk
1.1.1.1.2.1 +2 -2 fptools/happy/alex/mk/version.mk
1.1.2.4 +27 -42 fptools/happy/alex/src/Attic/AbsSyn.hs
1.1.2.3 +8 -0 fptools/happy/alex/src/Attic/CharSet.hs
1.1.1.1.2.4 +77 -77 fptools/happy/alex/src/DFA.hs
1.1.2.3 +15 -10 fptools/happy/alex/src/Attic/Info.hs
1.1.1.1.2.4 +75 -99 fptools/happy/alex/src/Main.hs
1.2.2.3 +9 -5 fptools/happy/alex/src/Makefile
1.1.1.1.2.4 +15 -12 fptools/happy/alex/src/NFA.hs
1.1.2.3 +1 -1 fptools/happy/alex/src/Attic/Parser.y
1.1.1.1.2.3 +157 -79 fptools/happy/alex/src/Scan.hs
1.1.1.1.2.3 +31 -8 fptools/happy/alex/src/Scan.x
1.1.2.2 +5 -2 fptools/happy/alex/src/Attic/Util.hs
_______________________________________________
Cvs-happy mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/cvs-happy