Parsing Expression Grammar (PEG) is a new way to specify recursive-descent parsers with limited backtracking. The use of backtracking lifts the LL(1) restriction usually imposed by top-down parsers. In addition, PEG can define parsers with integrated lexing.
Mouse is a tool to transcribe PEG into an executable parser written in Java. Unlike some existing PEG generators (e.g., Rats!), Mouse does not produce a storage-hungry "packrat parser", but a collection of transparent recursive procedures. An integral feature of Mouse is the mechanism for specifying semantics (also in Java). This makes Mouse a convenient tool if one needs an ad-hoc language processor. Being written in Java, the processor is operating-system independent.
This version includes an experimental tool, the PEG Explorer.
It is used to interactively
investigate the effects of limited backtracking in PEG.
It replaces the PEG Analyzer from version 1.8.
Its use is explained under PEG Explorer (opens in a separate window).
Units is a program for computations on values expressed in terms of different measurement units. It is an advanced calculator that takes care of the units.
Project page (opens in a separate window).
This version mimicks the new version of GNU Units by offering three new features:
2 m = 6 ft + 6 in + 6|8in (rounded up to nearest 1|8in) 1.1 * (2 hours + 5 min) = 2 hours + 17 min + 30 secTo save typing, patterns used for such conversions may be defined in units data file as 'unit list aliases'.
Latest change 2017-03-01