The Tower Bridge in Sacramento, California GOLD Parsing System
A Free, Multi-Programming Language, Parser
 

Main

Latest News
Getting Started
Screen Shots
Download
Documentation
Contributors
Contact


About GOLD

How It Works
FAQ
Why Use GOLD?
Comparison
Revision History
Freeware License
More ...


Articles

What is a Parser?
Backus-Naur Form
DFA Lexer
LALR Parsing
Glossary
Links
More ...


GOLD Newsgroup


 

Welcome to the GOLD Homepage!

GOLD is a free parsing system that you can use to develop your own programming languages, scripting languages and interpreters. It strives to be a development tool that can be used with numerous programming languages and on multiple platforms.

Are you new to parsing? If so, please check out the following:

Getting Started
Why Use GOLD?
Parser Comparison

Have any questions? Please check out either of the two forums below are contact me directly.

Design

Like most parsing systems, GOLD uses the LALR algorithm to analyze syntax and a Deterministic Finite Automaton to identify different lexical units. However, GOLD takes a different approach than common compiler-compilers.

The LALR and DFA algorithms are simple automatas - using lookup tables to determine both state transition and parsing actions. As a result, most of the computational work is performed before any text is parsed. It is the computation of these tables that is both time-consuming and complex. Once created, these parsing tables are essentially independent of any programming language. Data is simply data.

GOLD takes a unique approach of logically separating the development of the LALR and DFA parse tables from the algorithms that use them. As a result, GOLD does not require you to embed your source code directly into the grammar. Grammars are completely independent of any implementation language or platform. Instead, the application analyzes the grammar and then saves the parse tables to a separate file. This file can be subsequently loaded by the actual parser engine and used.

As a result, the parsing engine can be, and has been, easily implemented in multiple programming languages. As a result, GOLD supports a myriad of programming languages - more than any other parsing system.

Project Name

"GOLD" is an acronym for Grammar Oriented Language Developer. Admittedly, this is not a particularly clever acronym, but it does, in part, represent the history of the greater Sacramento Area.

Latest News
November 8, 2007


Quick Download
GOLD Builder