Previous Table of Contents Next


5.1.4. Descendants

Languages that were created and are recognized as descendants (inspired or patterned after) of the Pascal language are listed here: Concurrent Pascal (1975), Pascal-Plus (1984), Mesa (1978), Modula-2 (1982), Oberon (1989), Euclid (1978), Object Pascal (1985). Ada is also recognized as being inspired to a lesser degree by Pascal. It is interesting to note that Wirth’s subsequent projects, Modula-2 and Oberon, are in this list.

5.1.5. Today

Today, Borland’s implementations of Pascal are considered to be the Pascal compilers with the highest market share. Delphi was developed as a recognized continuation of Pascal into the newer “visual programming” paradigm of the Windows-only realm (targets of Delphi are Windows 32, Windows 3.1, Windows 95, and Windows NT). Even Delphi 1 is denoted in version tags in the software as “version 8.”

Unfortunately, though, there has been a lack of attention to the DOS versions of Borland’s Pascal compilers from the Borland company itself. Version 7 of the DOS compiler, which was last updated in 1993 (7.01), has continued to be largely usable for creating 16-bit DOS applications, though Borland has ceased to support it (yet continues to sell it). This, along with the advent of newer platforms, has resulted in a renaissance of Pascal compiler creation. As a result, compilers exist today for almost all platforms, from the Macintosh to OS/2 and even UNIX.

The newer compilers that have been developed for DOS have been full 32-bit capable (that seems to be the only target, though, so Turbo Pascal is still usable for 16-bit targets) compilers. Examples of such compilers are TMT Pascal, FPK Pascal, and GNU Pascal. They all have extended the Pascal language to be usable by today’s standards and microcomputers, including the ability to compile for specific op-codes all the way up to Pentiums.

Note as well, with the advance in the capability of microcomputers today, that the use of Turbo Pascal has gained a couple of precautionary notes. With the increase of the size of hard disk drives to sizes of 2 GB and beyond, the standard DOS operating system has ceased to be able to return accurate sizes for the capacity of the disk, and the amount of space free on the disk if the size of these quantities exceed 2 GB.

In Pentium systems, a runtime error 200 (division by zero) may occur upon execution of any Turbo Pascal program that uses the CRT unit. This is due to the overflow of a variable in the initialization code for the CRT unit’s Delay procedure, as a result of the increased speed available in the Pentium processor beyond that of the older processors (greater than or equal to 200 MHz). Contrary to the statements of Borland’s technical support department (its position is to update to Delphi), the problem is readily repairable, as seen by the Internet WWW sites listed next.

5.1.6. Net Resources

This is a partial listing of some Internet sites of interest (links accurate at the time of this writing) in Pascal programming:

  http://www.geocities.com/Paris/3537/tpcont.html—Written to provide a satisfactory source for private individuals to learn Turbo Pascal as a first language (there was none on the Net at the time), it is much more of an educational document of a textbook nature than a reference, also containing several programming exercises. These exercises demonstrate many application-related concepts in Pascal, and may be useful to those who fit the license requirements who want to study more source examples of real-life coding situations.
  http://www.gdsoft.com/swag/swag.html—SWAG, or the SourceWare Archival Group, is a collection of free Pascal sources, provided by programmers all over the world, as the foremost source sample reference in the Pascal language, containing Pascal source regarding 57 different types of programming questions.
  http://www.tmt.com—This is the home site of TMT Pascal.
  http://home.pages.de/~FPK-Pascal/—This is the home site of FPK-Pascal.
  http://home.pages.de/~GNU-Pascal/—This is the home site of GNU-Pascal.
  http://users.southeast.net/~rdonais/tpascal/rdelay.zip and http://www.mi.uni-erlangen.de/~heckenb/newdelay.pas—These are links to two different places that hold fixes, written by R.E. Donais and Frank Heckenbach, that fix the problem with the CRT unit in Turbo and Borland Pascal 7.

5.2. Pascal Constructs

This section is a tutorial on Pascal constructs related to Turbo Pascal. The constructs presented may be applicable to any kind of Pascal, though the examples were created in Turbo Pascal and are not guaranteed to work in other implementations of Pascal. It describes using the Turbo Pascal compiler, elementary Pascal, control structures, data types, procedures and functions, units and include files, data manipulation, dynamic memory allocation, files access, textmode manipulation, DOS command functions, and some advanced options.


Previous Table of Contents Next