From Seo Wiki - Search Engine Optimization and Programming Languages
|It has been suggested that this article or section be merged into Flex lexical analyser. (Discuss)|
These programs perform character parsing, and tokenizing via the use of a deterministic finite automata or Deterministic finite state machine (DFA). A DFA (or NDFA) is a theoretical machine accepting regular languages. These machines are a subset of the collection of Turing machines. DFAs are equivalent to read only right moving Turing Machines or NDFAs. The syntax is based on the use of Regular expressions.
Flex provides two different ways to generate scanners. It primarily generates C code to be compiled as opposed to C++ libraries and code. Flex++, an extension of flex, is used for generating C++ code and classes. The Flex++ classes and code require a C++ compiler to create lexical and pattern-matching programs. Flex, the alternative language parser, defaults to generating a parsing scanner in C code. The Flex++ generated C++ scanner includes the header file FlexLexer.h, which defines the interfaces of the two C++ generated classes.
- John Levine, Tony Mason, and Doug Brown, Lex & Yacc, O'Reilly and Associates (2nd edition).
- M. E. Lesk and E. Schmidt, LEX - Lexical Analyzer Generator
- Alfred Aho, Ravi Sethi and Jeffrey Ullman, Compilers: Principles, Techniques and Tools, Addison-Wesley (1986). Describes the pattern-matching techniques used by flex (deterministic finite automata)
- Flex Home Page
- Flex Manual
- Compiler Construction using Flex and Bison - course by Anthony Aaby A Romanian rebuild version of this book in pdf format "fb2-press.pdf" or "fb2-printing.pdf" may be downloaded from  or directly from  or .
- Download Win32 binaries of Flex++ and Bison++
- ANSI-C Lex Specification
- JFlex: Fast Scanner Generator for Javacs:Flex