Prospero Extended Pascal for DOS Development Tools Pricing information

Prospero Extended Pascal for DOS

Compiler features

The fast one-pass compiler provides a choice of language levels. The first two are for compatibility with the older standard (ISO 7185), the next gives the standard features of Extended Pascal, and the last adds some local supplementary definitions. Large arrays, up to the capacity of the target machine, may be declared at the outer level. Other compile-time options include:

Language features

The Extended Pascal language includes a variety of important features within the standard definition. For example, an initial value can be attached to a type as part of its definition, and this value is automatically given to any variable or record field declared with the type. In this and many other respects, the language is a great advance on ear- lier versions. However, there are also local additions enabled at the default level. The following outline gives details of some standard and all additional features.

Data types
The integer type is 32 bits (4 bytes); there are additional predeclared subranges for bytes and 16-bit words. The real type is 8 bytes (IEEE double precision), with an additional 4-byte shortreal. The complex type is 16 bytes (two reals). Dynamic strings may be up to 32K bytes, sets may have up to 64K members. Subrange bounds may be constant or run-time variable expressions, allowing dynamic array and set sizes. Records may include dynamic-size fields.

Operators
Extended Pascal includes exponentiation operators ** and pow, and the operator >< for set symmetric difference. Substrings can be addressed. There are additional local operators REM, SHL, SHR and XOR.

Procedures and functions
The standard definition includes file binding, direct-access files, internal conversion, and date and time routines, as well as the procedures and functions familiar from earlier versions. The following additional procedures and functions are predeclared:
setlength, ltrim, openread, openwrite, connect, handle, echo, close, arcsin, arccos, tan, sinh, cosh, tanh, mm, max, rand, seed, newmem, dispmem, memavail, stkavail, testbit, setbit, clearbit, flipbit, move, isdigit, isalpha, lowercase, uppercase, exit, addrof, sizeof.

Linker features

The linker supplied with the package is able to produce normal DOS executable programs, and also programs to run in a DPMI environment which gives access to extended memory. (OS/2 2.0 and Microsoft Windows version 3, for example, offer the DPMI environment.)

Supplied interfaces

Besides the additional predeclared language features, there are several supplied interfaces which can be imported into application code. These interfaces are a natural means of making available definitions of further types and routines.

EPDOS
Access to the DOS and hardware environment is provided by the definitions in interface EPDOS, allowing file delete and rename, drive and directory operations, execution of programs and commands, access to environment strings, general DOS call and software interrupt, and port access.

EPEXCEP
The definitions contained in this interface allow an application program to intercept the default reporting of run-time exceptions and take control of specific classes (such as arithmetic or file conditions) or of all exceptions.

StringCompat
The dynamic string facilities of Extended Pascal allow new programs which manipulate strings to be written conveniently and easily. This module assists in the conversion of existing code or data files based on different conventions.

EPDPMI
The DPMI capability included in the package allows any program to run in extended memory. The EPDPMI interface provides explicit access to the functions defined by DPMI, rather as EPDOS gives access to DOS functions.


Pricing and Contact information.


Prospero Extended Pascal for DOS Development Tools Pricing information