Skip to content

samiam95124/Pascal-P6

Repository files navigation

                         THE P6 COMPILER/INTERPRETER

============================== Description =====================================

This is the 6th version of the Pascal-P compiler from Zurich. Pascal-P6 is the
Pascal-P5 compiler upgraded to include the set of extensions defined by the
Pascaline language standard.

Pascal-P was an implementation kit, created between 1972 and 1974, for the
original language Pascal. The source for the original compiler was passed around
and modified quite a bit, but Niklaus Wirth noted that it was very popular, and
represented a good method to popularize the language. He gathered the source
into a clean version called Pascal-P2, which was the basis of UCSD Pascal, which
in turn was the base language for Borland Pascal. The Zurich group then created
an improved version called Pascal-P4.

Pascal-P5 is Pascal-P4 modified to accept all of the ISO 7185 language.

Pascal-P5 is Pascal-P5 extended to accept the Pascaline language.

The full instructions for running and setting up the P6 compiler/interpreter
have all been incorporated into the document:

doc/the_p6_compiler.docx

Which is a Microsoft Word document, 2007 or later.

Please consult this documents for full instructions on how to use P6.

============================== Quick start =====================================

Pascal-p6 uses the standard GNU release layout. You execute:

[Windows]

> setpath
> configure
> make

[linux]

> . ./setpath
> ./configure
> make

(You can avoid "setpath" by placing the ./bin directory on your path)

This will make the compiler and interpreter set. You can then try a sample
program as:

> p6 sample_programs/hello

================================== Problems ====================================

You need a working gpc implementation. It is strongly suggested you use the
gpc version 20070904. gpc has/had various compliance issues with ISO 7185, and
the compiler has ceased to be supported. This version is found to be solid.

You will need a working set of linux tooling (grep, ls, rm, etc). Mingw has
an excellent set of tools for Windows users.

You need the "flip" line ending adapation program. If you don't have it, we
include a copy you can compile, or you can simply go find it. It is a widely
available program.

================================== Feedback ====================================

The preferred method for feedback is to post in:

https://github.com/samiam95124/Pascal-P6/discussions/categories/general

Because if what you have to say is general to Pascal-P6, everyone can see it
there. There are also several subcatagories for messages at:

https://github.com/samiam95124/Pascal-P6/discussions

Otherwise there is my email:

samiam@moorecad.com

There is also the Pascal web page I run at:

www.standardpascal.org