JFlex 1.3 released

Gerwin <kleing@informatik.tu-muenchen.de>
22 Oct 2000 01:28:24 -0400

          From comp.compilers

Related articles
JFlex 1.3 released kleing@informatik.tu-muenchen.de (Gerwin) (2000-10-22)
| List of all articles for this month |

From: Gerwin <kleing@informatik.tu-muenchen.de>
Newsgroups: comp.compilers
Date: 22 Oct 2000 01:28:24 -0400
Organization: Technische Universitaet Muenchen, Germany
Keywords: lex, Java, available


JFlex version 1.3 has been released. JFlex is a free (GPL)
flex-like scanner generator for the Java programming language.

Version 1.3 fixes all known bugs and adds a lot of new features:

- easy rpm installation for Linux

- new operator ! for negation in regular expressions
    With the new negation operator you also have intersection
    and set difference on regular expressions:
    * The intersection (logical and) of a and b is !(!a|!b)
    * The set difference a-b is !(!a|b)

- new "upto" operator ~ in regular expressions:
    No more tedious specification of comments! For a traditional
    C-style comment you can now just write "/*" ~"*/" instead
    of the complex old construction "/*" ([^*] | \*+[^*/])* \*+ "/"

- new operator for the empty charclass [] (matches nothing)
    [] is the neutral element of union
    []? (the empty string) is the neutral element of concatenation
    ![] (everything) is the neutral element of intersection

- new operator for the "any" (= negated empty) charclass [^]
    Matches any one character and replaces constructs like .|\n

- customize for yy_ScanError (thanks to Sean Behiel for the tip)

- customizable size of the internal scan buffer with the new
    %buffer option (thanks to Hans Kratz for the suggestion)

- char yycharat(int) method for more efficient access to single
    characters of the matched text (thanks to Tatu Saloranta for
    the suggestion)

- lex tables that produce too big strings in the generated class
    are split up. Allows for really huge scanners now
    (thanks to Bobby Sardana for the hint)

- an additional external skeleton file that supports nested
    input streams (thanks to Anders Henriksson for comments and

- JLex compatibility: BOL ^ and EOL $ now more Unicode-friendly.
    See also

- a new resetStream method for reusing scanner objects
    (thanks to Tatu Saloranta)

- BYacc/J support with a new %byaccj switch (thanks to Larry Bell
    for help, suggestions and comments)
    BYacc/J is a modification by Bob Jamison of the traditional
    Berkeley yacc that supports Java. Available at:

- include-files for lexical specifications with the %include option

- New -dump command line option for a readable dump of the generated
    charclasses, NFA, DFA, and minimized DFA tables.

Thanks to Sean Behiel, Frank Berger, Kai Knubben, Hans Kratz and ktibi
for their excellent bug reports.

You can download JFlex 1.3 at http://www.jflex.de/download.html The
JFlex homepage is http://www.jflex.de


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.