wok annotate re2c/description.txt @ rev 22201
updated xorg-xproto again (7.0.24 -> 7.0.31)
author | Hans-G?nter Theisgen |
---|---|
date | Mon Nov 11 11:17:07 2019 +0100 (2019-11-11) |
parents | |
children |
rev | line source |
---|---|
Hans-G?nter@21835 | 1 Re2c is a free and open-source lexer generator for C and C++. |
Hans-G?nter@21835 | 2 The main goal of the project is to generate very fast lexers that match or |
Hans-G?nter@21835 | 3 exceed the speed of carefully optimized hand-written code. Instead of using |
Hans-G?nter@21835 | 4 traditional table-driven approach, re2c encodes the underlying finite state |
Hans-G?nter@21835 | 5 automata directly in the form of conditional jumps and applies numerous |
Hans-G?nter@21835 | 6 optimizations to the generated code. The resulting programs are faster and |
Hans-G?nter@21835 | 7 often smaller than their table-driven counterparts, and they are much easier |
Hans-G?nter@21835 | 8 to debug and understand. |
Hans-G?nter@21835 | 9 Re2c has an unusual flexible user interface: instead of assuming a fixed |
Hans-G?nter@21835 | 10 program template, it leaves the definition of the interface code to the user |
Hans-G?nter@21835 | 11 and allows to configure almost every aspect of the generated code. This gives |
Hans-G?nter@21835 | 12 the users a lot of freedom in the way they bind the lexer to their particular |
Hans-G?nter@21835 | 13 environment and allows them to decide on the optimal input model. |
Hans-G?nter@21835 | 14 Re2c supports fast and lightweight submatch extraction which does not requre |
Hans-G?nter@21835 | 15 the overhead on full parsing — a feature that is rarely found in the wild. |
Hans-G?nter@21835 | 16 Re2c is used by many other projects (such as php, ninja, yasm, spamassassin, |
Hans-G?nter@21835 | 17 BRL-CAD and wake) and aims at being fully backward compatible. |
Hans-G?nter@21835 | 18 On the other hand, it is a research project and a playground for the |
Hans-G?nter@21835 | 19 development of new algorithms in the field of formal grammars and automata. |