[ < ] | [ > ] |  | [ << ] | [ Up ] | [ >> ] |  |  |  |  | [Top] | [Contents] | [Index] | [ ? ]

# 1. Welcome to GNU Pascal ...

... the free 32/64-bit Pascal compiler of the GNU Compiler Collection (GNU CC or GCC). It combines a Pascal front-end with the proven GCC back-end for code generation and optimization. Other compilers in the collection currently include compilers for the Ada, C, C++, Objective C, Chill, FORTRAN, and Java languages. Unlike utilities such as p2c, this is a true compiler, not just a converter.

This version of GPC corresponds to GCC version 2.95.x.

The purpose of the GNU Pascal project is to produce a Pascal compiler (called GNU Pascal or GPC) which

- combines the clarity of Pascal with powerful tools suitable for real-life programming,

- supports both the Pascal standard and the Extended Pascal standard as defined by ISO, ANSI and IEEE (ISO 7185:1990, ISO/IEC 10206:1991, ANSI/IEEE 770X3.160-1989),

- supports other Pascal standards (UCSD Pascal, Borland Pascal, parts of Borland Delphi and Pascal-SC) in so far as this serves the goal of clarity and usability,

- may be distributed under GNU license conditions, and

- can generate code for and run on any computer for which the GNU C compiler can generate code and run on.

Pascal was originally designed for teaching. GNU Pascal provides a smooth way to proceed to challenging programming tasks without learning a completely different language.

The current release implements Standard Pascal (ISO 7185, levels 0 and 1), a large subset of Extended Pascal (ISO 10206, aiming for full compliance), is highly compatible to Borland Pascal (version 7.0) with some Delphi extensions, and provides a lot of useful GNU extensions.

This manual contains

- an overview of some of GPC's most interesting features, see section 2. Some of GPC's most interesting features.,
- a list of new features since the last release, see section 3. New Features of GNU Pascal.,
- the GNU Pascal Frequently Asked Questions List, see section 4. The GNU Pascal Frequently Asked Questions List.,
- installation instructions, see section 5. How to download, compile and install GNU Pascal.,
- a QuickStart Guide for programmers used to the Turbo Pascal/Borland Pascal compiler, see section 6. A QuickStart Guide from Borland Pascal to GNU Pascal.,
- a list of command-line options to invoke the compiler, see section 7. Command Line Options supported by GNU Pascal.,
- the Programmer's Guide to GPC, describing the Pascal programming language in general and GPC specifc aspects, see section 8. The Programmer's Guide to GPC,
- the alphabetical GPC language reference, see section 9. The Alphabetical GPC Language Reference,
- a list of keywords and operators supported by GNU Pascal, see section 10. Pascal keywords and operators supported by GNU Pascal.,
- information on how to report bugs in GNU Pascal and how to get support, see section 11. Where to get support for GNU Pascal; how to report bugs.,
- the list of known bugs and things to do, also listing bugs fixed and features implemented recently, see section 12. The GNU Pascal To-Do List.,
- some information for those who are interested in how GNU Pascal works internally, see section 13. The GPC Source Reference,
- a list of contributors which tells you who devloped and is maintaining GNU Pascal, see section A. Contributors to GNU Pascal.,
- the GNU General Public License which informs you about your rights and responsibilites when using, modifying and distributing GNU Pascal, see section C. GNU GENERAL PUBLIC LICENSE,
- and other texts about Free Software and the GNU Project intended to answer questions like "what is GNU?" you might have in mind now, see section E. The GNU Project..

If you are familiar with Standard Pascal (ISO 7185) programming, you can probably just go ahead and try to compile your programs. Also, most of the ISO Extended Pascal Standard (ISO 10206) is implemented into GNU Pascal. The Extended Pascal features still missing from GPC are `qualified` module import, `protected` module export variables, set types with variable bounds, structured value initializers and expressions as subrange lower bounds.

If you are a Borland Pascal programmer, you should probably start reading the QuickStart guide from BP to GNU Pascal, see section 6. A QuickStart Guide from Borland Pascal to GNU Pascal.. If you are curious about the new features GPC offers, you can get an idea in the overview of GPC highlights (see section 2. Some of GPC's most interesting features.), and read in more detail about them in the Programmer's Guide to GPC (see section 8. The Programmer's Guide to GPC) and in the alphabetical GPC Language Reference (see section 9. The Alphabetical GPC Language Reference).

And, please, think about how you can contribute to the GNU Pascal project, too. Please support our work by contributing yours in form of example programs, bug reports, documentation, or even actual improvements of the compiler.

All trademarks used in this manual are properties of their respective owners.

[ < ] | [ > ] |  | [ << ] | [ Up ] | [ >> ] |  |  |  |  | [Top] | [Contents] | [Index] | [ ? ]

This document was generated by Frank Heckenbach on May, 10 2002 using texi2html