New OS/2 visual programming tool for writing parsers.

New OS/2 visual programming tool for writing parsers.

Post by Erik B Sherm » Thu, 15 Dec 1994 18:01:26

This is the press release and some technical information for a new
programming tool called Visual Parse++ from SandStone Technology Inc.

If you have access to Compuserve, there is a demo located in 'GO
OS2AVEN' in the 'Other Vendors' section. The title is 'Visual

If you have any other questions, you can e-mail

70 Tidwell Lane
Henderson NV, 89014
(702) 896-7623 (Voice)
(702) 896-6932 (Fax)
(800) 988-9023 (Voice)

Contact: Bill Donahue
CIS: 71332,2577

Visual Parse++ - New Visual Programming Tool Cuts Development Time From
Common Tasks

For Immediate Release
December, 1994

  Hendserson, NV -- Software developers can save time needed for many
common programming tasks with a new type of visual programming tool
from SandStone Technology Inc.

  Visual Parse++ brings visual programming technology to parsing
techniques -- programming methods used to manipulate and control

  Parsing technology has traditionally been restricted to compilers
and interpreters because of the difficulty in using such existing
parsing tools as the Unix utility yacc, or its derivatives.

  With Visual Parse++, developers can use parsing technology for end
user commands, protocols, data file structures, as well as the
traditional compiler and interpreter applications. Visual Parse++ even
makes parsing economical for such small tasks as edit field
validators, user parameter files, scripting, tagged data, formatted
files, and data filters.

  Visual Parse++ works by creating tables and a skeleton application
for a developer from a specification. Because of this, it is
programming language and platform independent.  Support for C, C++,
and REXX is currently included.

  While presently shipping for OS/2, a Windows version of Visual
Parse++ is planned for the first quarter of 1995.  SandStone
Technology is also considering an AIX version.  Unix support is
planned for the second quarter of 1995.

  Visual Parse++ supports international character sets through DBCS
and Unicode.

  Visual Parse++ is available directly from SandStone Technology.
While the list price for the OS/2 version is $699, there is an
introductory special of $299 until February 28, 1995.


Here is a more technical description of the product. First the
user interface.

You define your 'language' in a specification (a rule file in Visual
Parse++ terminology) that uses a familiar regular expression and
BNF-like notation. You then rigorously debug the entire specification
while you watch. The test data enters from the right, and moves across
the screen from right to left at each STEP. This gives you a clear
visual indication of where you are in the given test file.

As things occur, they are highlighted. Some of the things you see are:

1.Regular expression matches (very detailed, you see the actual point
in each regular expression.)

2.The current lookahead symbol, built up as the data is lexed.

3.The parsing stack.

4.Production reductions. When a production is reduced it is
highlighted, and the associated stack elements are also highlighted.

5.Errors and error recovery.

6.Conflicts. You can test a rule file with conflicts. When a conflict
occurs, the productions are highlighted. You resolve the conflict with
a mouse click. Very useful, especially when just starting out.

Here are some of the advanced features of the lexing and parsing

1.An expression list stack. You can define multiple expession lists
and push and pop them as regular expressions are matched.  Very clean
and more powerful than start states.

2.Advanced error recovery, called synchronization tokens, as well as
error tokens. You imbed synchronization tokens (%) in the grammar at
points where recovery is likely to succeed.  Synchronization tokens do
not change the grammar in any way, except to synchronize error
recovery. Error tokens are also supported. When an error occurs,
Visual Parse++ searches the stack (the current context) for any
symbols that can follow either a sync token or an error token. It then
scans the input looking for a matching token. When one is found, the
stack is popped until the current symbol is valid.

3.Unicode and DBCS support. Any 32-bit quantity can be used as a code
point in a regular expression.

4.Programming language and platform independence. There is a well
architected API for each language supported. Visual Parse++ generates
a 'reduce' function for each language.  This is where you put all your
code. In C or C++, the 'reduce' function is a switch statement with a
case for each production.  There are easy to use functions to access
and pass information on the stack. You can also customize stack
elements to your liking. In C++, this is done by subclassing the class
SSYaccStackElement. We supply a library, or equivalent, for all
programming languages that we support.

5.Because the lexing and parsing process is encapsulated in an API,
you can add as many lexers and/or parsers as you wish to any
application, including DLL's.

6.The parser generator uses the most advanced algorithms, (Park,
Chang, Choe), for superior performance (We also tried DeRemmer and
Ives, but PCC was the best). Can handle any size grammar.

7.The tables generated are very compact, on the order of the size of
the lexer/parser (For a small edit field validator, maybe 100 bytes or

Visual Parse++ can be used for many, many applications that you may
not have considered before, like edit field validators and list box
data filters. Why use a specialized ad-hoc tool when you have the full
power of lexing and/or parsing technology available.


1. GOLD Parser updated! - A new, free parser generator.

To my fellow programmers and computer scientists,

My name is Devin Cook and I am currently working on my Masters Thesis
in Computer Science at California State University, Sacramento. In the
process of working on my thesis, I developed a generalized parser
generator to eventually parse computer code.

Getting side tracked, I started working on improving the parser
generator to become a tool that can be used by both computer
scientists and developers in and outside the classroom. Essentially,
the GOLD Parser performs many of the functions available in YACC and

I plan to always offer the software free and port the parsing engine
to as many platforms as possible.

There have has been major progress in the development of the GOLD
Parser Generator. I've moved the site from my univerisity account to a
subfolder of my personal domain and improved the site drastically. The
new site contains full documentation, an improved appearance,
graphics, grammars and other resources.

In the new version of the GOLD Parser, the following changes have been

 * Added a 'Reduction' class to the Parser Engine DLL. Using this
class, the parser can automatically create a parse tree without
requiring the developer to create customed objects

 * Added the ability to open Compiled Grammar Table files with the
   - I had the code, why not use it?

 * Improved HTML exporting. The web page now uses embedded cascading
style sheets. This decreases size and allows easy maintenance.

 * Updated the documentation to reflect to changes to the Parser
Engine DLL.  The style and layout of the documentation was also
improved.  Changed the default size of the main window and the test
window. Per request, the parse tables can now be exported to a HTML
webpage even if a conflict is detected.

 * Fixed a bug that occurred when creating terminals with the pipe |
or double-quote " character. The flaw is the result of
misinterpretation by the regular expression scanner."

The NEW website is located at:

The ZIP file containing version 1.0 Beta 17, is only about 2.6MB.
Please take a look; I look forward to any and all feedback.

I thank you for your time and interest,

- Devin Cook

2. unable to change date like -12/8/2059

3. howto write a test program, without OS or BIOS


5. A new free OS Kernel by a former member of VMS OS & UNIX OS Development

6. Zmodem for Unix: FTP sites?

7. New tool to write JIT compilers

8. upgrading

9. ANN: GOOSEE visual programming new version

10. NEW visual programming for C programmers/micros

11. ANN: GOOSEE visual programming new version

12. NEW visual programming for C programmers

13. how to write a new programming language?