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


Reply via email to