GOLD Parser News: Version 2.2 was released!

From: DevinCook.com (GOLDParser_at_DevinCook.com)
Date: 04/29/04


Date: 29 Apr 2004 00:41:01 -0700


========================================================
GOLD Parser News
2004-04-29
========================================================

Great News! The GOLD Parser Builder version 2.2 was just released!

---> http://www.DevinCook.com/GOLDParser

About the GOLD Parser
---------------------
The GOLD Parser is a free, open source, parser generator that you can use
to develop your own compilers and emulators.

Modern bottom-up parsers use a Deterministic Finite Automaton (DFA) for
identifying different classes of tokens and a LALR(1) state machine to
parse them. The actual LALR(1) and DFA algorithms are easy to implement
since they rely on tables to determine actions and state transition.
Consequently, it is the computing of these tables that is both
time-consuming and complex.

Unlike common compiler-compilers, the GOLD Parser does not require you to
embed your grammar directly into your source code. Instead, the Builder
analyzes the grammar description and saves the parse tables to a separate
file.

This information can be, subsequently, loaded by the actual parser engine
and used.

The GOLD Parser currently supports:

* Java
* All Microsoft .NET languages
* Delphi 3 & 5
* All ActiveX languages
* Visual C++
* ANSI C

Parser Engine Source Code
-------------------------
In the future, the source will be ported to as many additional
programming languages as possible. If you would like to port
the code to another language, your work will be deeply appreciated.
The GOLD Parser Engine source code is now available for:

* ANSI C
* C#
* Delphi 3 & 5
* Java
* Visual Basic 5
* Visual Basic .NET
* Visual C++

Major Changes in Version 2.2
----------------------------

* Added 'Virtual' terminals. These terminals are specified
  in the "Virtual Terminals" parameter. The system will
  enter these terminals into the symbol table, but they
  will not be entered into the Deterministic Finite
  Automata. As a result, the terminals will not be
  recognized by the tokenizer, but can, instead, be created
  by a specialized version of the Engine or by the
  developer. This can help developers parse languages which
  are not context free - such as Python.
  
* Added a few new options to the exporting to formatted
  text or web pages. You can now exclude LALR lookahead
  sets and unstarted configurations when exporting the
  parse tables.
  
* Program Templates now can create constants in lowercase.
  The ID-CASE parameter can contain Uppercase, Propercase
  and Lowercase. Previously, 'lowercase' was not allowed.
  
* Added a 'Trim Reductions' button to the Test Window
  toolbar. Beforehand, this option could only be changed
  from the main menu.
  
* The Test Window can now export the parse action table.
  Before, the test window would only export the parse tree.
  
* The formatting used in the Test Window was improved. The
  formatting used to list parse actions was modified. The
  new format is easier to interpret.
  
* I cleaned up much of the internal code. There are too
  many things to list.
  
* The acronym for 'GOLD' was changed again. The new acronym
  stands for Grammar Oriented Language Developer. This
  should be the last time the acronym is changed.
  
* Character constants between &D800 and &DBFF are no longer
  valid. These values are reserved in Unicode for UTF16
  encoding.
  
* The 'Export Formatted Text' utilty is now much faster.
  Both the speed and formatting used by this utility was
  improved.
  
* The Help toolbar button and menu item will now open the
  main online help page. Beforehand, the Help would open
  the meta-language documentation page.
  
* Fixed a bug when creating skeleton programs. If the
  Symbol or Rule prefix was blank, the system was adding
  the text 'Space'. This made if it difficult to create
  constant names without prefixes.Fixed a very minor bug
  with the Create Program Template window. When you browse
  for a different folder using the Create Skeleton Program
  utility, the system was not disabling the 'Create' button
  if no templates were found.
  
* Possibly fixed a bug concerning how the toolbar icons are
  displayed. On some systems, the toolbars were failing to
  remove the mask color (color that is transparent) on the
  icons. I made some revisions to the GUI library that
  might fix this. Time will only tell, though.


Quantcast