The Tower Bridge in Sacramento, California Original GOLD Engine
Pascal Programming Language
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 ...


The Pascal Programming Language was originally developed by Niklaus Wirth in 1970. The language was initially intended for beginning programmers to learn structured programming. However, the language became popular in both business and academic institutions.

Later, the language was modified to to include the object-oriented programming paradigm. This work was mostly done by Niklaus Wirith and Larry Tesler in conjunction with Apple Computer. Object Pascal found its way into several variants including Turbo Pascal and Delphi.

 

Object Pascal Engine
by Rob van den Brink
Program Template Rob van den Brink updated his engine for the Object Pascal Programming Language. His implementation uses a program template to create a full-functioning program. This approach embeds the parse tables directly in the source code. As a result, you do not need to load a Compiled Grammar Table file. The download contains a program template as well as several examples.

From the template file:

This template generates an inline parser engine, in (object) Pascal code, with full support of error productions (to recover from errors). The lexer and parser are fully embedded in the rest of your code, so that other modules are not required. The resulting code can be compiled directly into a stand-alone program with a good object Pascal compiler (like Virtual Pascal or Delphi).

The resulting program will read an input file (specified on the command line) and emits the tokens and associated actions to the screen. Since this engine has full support of error productions, and uses the SynError token for that, you should define 'SynError' in the "virtual terminals" of your grammar.

Author: Rob van den Brink
Language: Object Pascal
Version: 1.1
Date: August 2006
Size: 248 KB