Pascal

Introduction

The Pascal programming language is a language that imposes structure to the code. It was designed that way originally as a Structured programming learning tool. But today this imposed structure is one of Pascal's greatest strength as a programming language. Pascal is known as a strong typed language which means that it has a wide range of data types as well as construct to create your own specific data types as needed by the programming project at hand.

Though Pascal was originally a teaching language it evolved, with it's many implementations, into a full fledged general purpose language capable of taking on most programming tasks. Let's take a look at some Pascal History to get a feel of how and when Pascal evolved into the language it is today.

The Pascal History

Pascal essentially grew out of the ALGOL programming language. ALGOL was intended for scientific computing. it was a very elaborate language design effort but because of many flaws and missing essential datatypes like the character string type, the scientific community rather chose to use FORTRAN and left ALGOL to dissapear except for a language to describe algorithms.

In the 1960s, Dr. Niklaus Wirth (one of several computer scientists working on extending the ALGOL language) worked for close to 10 years on his own extension of ALGOL. In 1971, he published his specification for a highly structured language which of course looked like ALGOL in many ways but differed from it in the same magnitude. He called it Pascal in honor of the French mathematician Blaise Pascal.

A little bit after Pascal was created, the Unversity of California in San Diego adapted Pascal to run on the most widely spread microcomputer of the time, the Apple computer. In 1979, USDC P-System was created and became the first "standard" implementation of the Pascal language.

By the early 1980s, Pascal was fast becoming more and more used throughout universities, many events contributed to it's widespread use. The most notable is in 1983 when the small company called Borland created TurboPascal version 1.0 for the IBM PC line of computers. It boasted so many features aside supporting the standard Pascal specifications that it quickly became a language of choice amongst the software development industry (commercial and personal alike).

ObjectPascal A New Pascal:

It wasn't until 1986 that ObjectPascal was adopted as a new incarnation of the Pascal language. Back then OOP was fast becoming the new way of development software and Pascal had to make the shift so to speak. ObjectPascal offers support for the classic Pascal datatypes and constructs and adds a fully integrated OOP to it's language arsenal of semantics and syntaxes.

Aside supporting OOP programming paradigm, ObjectPascal also supports OOP related Datatypes such as the List, the Collection and Streams natively. With these extensions it's possible to accomplish everything and organize code on a per object basis.

Today's Pascal Advantages

  • Because of the very nature of pascal (strong typed language, enforced structure, required variable declarations, etc) Pascal and ObjectPascal code is typically a very clear and clean programming language to look at. If the programmer takes the time to name his variables, objects, procedures and functions intelligently, Pascal can almost be considered a self documenting language. Comments are still strongly recommended however because today's pascal is capable of very low level development.
  • Today's pascal compiles with 32 and 64 bit architecture natively which gives them the ability to break the barriers of 16 bit OS such as MS-DOS, PC-DOS and FreeDOS to give applications alot more directly usable memory. The once known 64Kb data structure limits are now gone and other memory related issues simply do not exist.
  • Pascal today incorporates assembly language in such a way that you can use assembly without needing to separate the Pascal code and Assembly language code in separate modules needing to be compiled by separate compilers when then need to be linked together. this greatly reduces the complexity of a project.
  • Pascal has no need for projects and make files. It also doesn't need the use of namespaces hence it's about impossible to create a conflict of variables except if they are declared at the same level in the same module. How's that for keeping things well organized and minimize errors?

These are just some of the advantage that come from using Pascal/ObjectPascal. Though today, some languages like C/C++ are more widely used, it's not because Pascal is not capable of doing things at all. Just a simple question of popularity. though Delphi today is still a very popular RAD (Rapid Application Development) language.

External Pages

Compiler and Development Tools

Pascal Development Groups and Efforts:

Places to Learn Pascal Programming

page_revision: 1, last_edited: 1204135062|%e %b %Y, %H:%M %Z (%O ago)