The Paradigm/SP Implementation
Notes
Atanas Radenski
Computer Science Department, P.O. Box 19479
Winston-Salem State University, Winston-Salem, NC 27103
e-mail: radenski@computer.org
These notes describe the Paradigm/SP compiler and interpreter
and define the terms and conditions for their use. The notes also explain
what work performed by others has been used in the Paradigm/SP implementation.
< ^>
Contents
1. Definitions
2. Credit to Others
3. Terms and Conditions
4. Software Limits
5. Program Installation
6. References
7. Related Links
< ^>
1. Definitions
<^>1.1
Implementation
The Paradigm/SP prototype implementation (hereafter Implementation)
consists of experimental research software and documentation created by
Atanas Radenski (hereafter AR). The Implementation consists
of Manuals and Programs for the programming language
Paradigm/SP
designed
by AR. The whole Implementation is available on the web at
http://www.rtpnet.org/~radenski/research/compilers/index.html
<^>1.2
Manuals
The following Manuals are available:
< ^>1.3
Programs
The Programs, written by AR, are a Paradigm/SP compiler
and interpreter (hereafter Compiler and Interpreter). All
Programs
have to be installed in the same Implementation Directory. The Programs
are written in TurboPascal, Borland version 7.0 (hereafter
TP).
The Programs can be used from with the TurboPascal Integrated
Development Environment (hereafter TP IDE).
The Programs are stored as a zipped Archive. The Archive
includes seven TP source files (hereafter Program Files):
|
pCommon.pas: The common declarations used by the Compiler
and Interpreter (encapsulated in a TP unit). |
|
pTexim.pas: Declarations
of common tables and common export-import procedures used by the Compiler
and Interpreter encapsulated in a TP unit. |
|
pScan.pas: The
Compiler
procedure that performs lexical analysis (encapsulated in a TP unit). |
|
pParse.pas: The
Compiler
procedure that performs syntax, scope, and type analysis (encapsulated
in a TP unit). |
|
pAssem.pas: The Compiler
procedure that assembles interpreted code (encapsulated in a TP
unit). |
|
pComp.pas: The Compiler
main program. |
|
pInter.pas:
The Interpreter main program. |
<^>2.
Credit to Others
The Paradigm/SP language (designed by AR) is a modular object-oriented
extension of the SuperPascal language [Brinch Hansen 1994].
The principle new features of Paradigm/SP are extensible modules,
classes and class overriding. The parallel features of
SuperPascal
have been inherited by Paradigm/SP and enhanced with modularity
and object-orientation. The Paradigm/SP Manuals:
|
extend and modify the SuperPascal manuals to reflect the language
extensions and modification adopted in Paradigm/SP; |
|
repeat literally parts of the SuperPascal manuals on language features
that have been inherited from SuperPascal without changes. |
The Programs are based (1) on the SuperPascal compiler and
interpreter described and listed in [Brinch Hansen 1993], (2) on the Oberon
compiler described and listed in [Wirth and Gutknecht, 1992] and (3) on
original components developed by AR.
<^>3.
Terms and Conditions
This Implementation is in the public domain. The Implementation
is not guaranteed for any particular purpose. The Implementation
is supplied "as is" without any warranties. The Implementation developers
do not accept any liabilities with respect to the Implementation.
The user is responsible for selecting the Implementation, and for
the use and results obtained from the Implementation. Your use of
the Implementation indicates your acceptance of these terms and
conditions.
<^>4.
Software Limits
The Program File pCommon.pas (hereafter Common Declarations)
defines common constants, types, functions, and procedures used by the
Programs.
The limits of software arrays are defined by common constants (hereafter
Software
Limits). If the Software Limits are too small for compilation
or execution of a user program, these limits should be increased by editing
the Common Declarations and recompiling the Programs.
<^>
5. Program Installation
Create an empty Implementation Directory. Download the zipped Archive
in the Implementation Directory and unzip it. You may use the WinZip
program that is available at http://www.winzip.com/winzip.
You can build the Compiler and the Interpreter in the
TP
IDE. Before compilation, you must select the 8087 Numeric
Processing Mode. To do so, select Compiler Options from the
Options
menu and mark the 8087 mode.
In order to build the Compiler perform the following steps:
|
From the Compile menu, execute the Primary File command and
select pComp.pas as a primary file; |
|
From the Compile menu, select Disk as Destination; |
|
From the Compile menu, execute the Build command. |
You can build the Interpreter in a similar way by selecting pInter.pas
as a primary file.
<^>
6. References
Brinch Hansen, P. (1993), anonymous ftp://top.cis.syr.edu/pbh/,
Syracuse University, Syracuse, NY.
Brinch Hansen, P. (1994) The Programming Language SuperPascal.
Software-Practice and Experience, 24 (5), May 1994, 467-483.
Wirth, N., and J. Gutknecht (1992) Project Oberon. ACM Press,
New York, NY.
< ^
> 7. Related Links
Index
of Manuals
The
Paradigm Language and Its Implementation
Research
Contact
Last updated: October 1999.