The Harmony 1.1 Core Language Parser was written using several tools that are available freely on the Web. We use flex++ for lexical analysis and btyacc for parsing. Note that btyacc is a backtracking variant of yacc that allows us to use a highly ambiguous grammar directly. This gives the benefit of making the grammar much easier for humans to read. We compile the Harmony parser using Gnu C++ (version 2.6.3 or later).
We are working on a Java-based parser using a much more cryptic grammar that is optimized for parsing efficiency and accuracy, not human readability.
The following components are available for download, subject to the terms of the Harmony 1.1 Parser license agreement. (BYU retains the copyright to this material.) Note: You may need to hold down the SHIFT key while clicking these links in order to download them properly.
Historical note: Harmony has also been called OSM-L.
Last updated Fri Jul 10 14:50:41 MDT 1998
OSM Administrator (email@example.com)