Computing Reviews

RE2C: a more versatile scanner generator
Bumbulis P., Cowan D. ACM Letters on Programming Languages and Systems2(1-4):70-84,1993.Type:Article
Date Reviewed: 05/01/95

RE2C is a tool for generating scanners from regular expressions. The authors argue that the reason developers tend to hand-code scanners is inadequate performance by machine-generated scanners. RE2C is a good solution to this problem because it concentrates on efficient deterministic finite automaton (DFA) recognition of tokens; leaves efficient buffering issues to the user; and provides few bells and whistles, such as end-of-input pseudo-tokens. The authors claim that these limitations make RE2C tailorable to virtually any system without compromising performance. Well-presented statistics substantiate the authors’ case.

The paper is well written and technically accurate. RE2C indeed seems to perform in a manner comparable to hand-coded scanners. Thus, it is an option that is difficult to ignore for anyone seriously considering alternatives for developing a scanner. The relevance of the entire work is questionable, however; with scanners occupying only a small fraction of overall compilation time, and with processor speed continuing to increase, the authors’ achievement loses some of its luster. In addition, while many developers do prefer hand-coded scanners because of efficiency, many others may well prefer them because they need to tweak the scanner to handle difficult constructs that otherwise do not fit the DFA model cleanly.

Still, for anyone who is dissatisfied with the performance of machine-generated scanners, this paper presents an excellent alternative.

Reviewer:  M. Bermudez Review #: CR118400

Reproduction in whole or in part without permission is prohibited.   Copyright 2024 ComputingReviews.com™
Terms of Use
| Privacy Policy