OXFORD AND CAMBRIDGE COMPILERS ANNOUNCE...

        *********************
        * ALGOL 68 FOR OS/2 *
        *********************

ALGOL 68 pioneered many facilities that are still considered state of the
art in modern programming languages. Algol 68 is designed to aid the
programmer in writing correct and intelligible programs leading to shorter
development cycles, fewer hidden bugs in the product and easier
maintenance. OS/2 programmers can now take advantage of this quality
language.

What's in Algol 68 ?

*) General purpose algorithmic language with a clean, consistent, and
   unambiguous syntax.
*) Comprehensive fully-checked type-system covering structures,
   unions, pointers, arrays, and procedures.
*) Procedures may be nested inside procedures and can deliver values
   of any type without you having to worry about where the storage is
   coming from.
*) Anonymous routines can be used in any context
   (similar to lambda-expressions).
*) User-defined operators including user-defined operator symbols.
*) Powerful control structures can deliver values of any type.
*) Typed dynamic memory allocation with transparent garbage
   collection.
*) Unions inherently know their current type.
*) Dynamic sized arrays know their current bounds.
*) Good string handling via flexible arrays of characters.
*) Array and structure displays can be used in any context.
*) Advanced handling of arrays of any rank such as slicing.
*) Parallel programming with semaphores.
*) Complex arithmetic
*) Declarations can be interleaved with statements.
*) Coercions automatically insert obvious operations such as 
   pointer-following and integer to real conversions.
*) Clear distinction between value semantics and reference semantics.
*) No distinction between compile-time constants and run-time values.
*) Modular programming with information hiding and type checking.

Why use OCCL Algol 68 on OS/2 ?

*) Efficient 32-bit code with extensive optimisations including inline
   expansion of procedure calls.
*) Language support for OS/2 multi-tasking threads via parallel
   clauses.
*) Run-time error checking of array subscripts and the use of NIL
   references to prevent accidental corruption of data. Redundant
   error checks are removed by extensive compile-time analysis.
   Production code can remove the checks or provide a replacement
   error handler.
*) No performance penalty for using high-level constructs instead of
   expanding as low-level constructs --- indeed the code will often
   be better.
*) Fast storage allocation and fast garbage collection means the heap
   can be used freely. The heap can be monitored during the program to
   allow action to be taken before available storage is exhausted.
*) 32, 64 and 80-bit real numbers with IEEE support.
*) Programs composed from large libraries automatically include only
   those procedures (and other global declarations) actually needed.
*) Compilation management tool recompiles modules when source files
   change and dependent modules only when interfaces change --- a
   secure and automatic replacement for `make'.
*) The compilation tool also provides housekeeping facilities such
   as cross-referencing.
*) Programs composed from large library modules automatically include
   only those procedures (and other global declarations) actually
   referenced.
*) Powerful debugger with extensive support for debugging Algol 68
   programs including a separate OS/2 session for the debuggee,
   breakpoints, macros, formatted memory display and stack traces.
*) Common compiler technology with N.A.Software's Fortran90+ allowing
   secure typed calls to libraries from this compiler.
*) Controlled interface to libraries from other, type insecure,
   languages.
*) Tool to convert C header files to modules wrapping a C library.
*) Mature professional compiler with a pedigree of 15 years
   development behind it. Users of previous versions of the compiler
   include Universities, government research labs, hospitals and
   telecoms worldwide.

What libraries are provided ?

*) Standard I/O facilities.
*) Maths functions including complex transcendentals.
*) String support and SNOBOL-like pattern matching.
*) Strong-typed binary files similar to persistent objects 
   - with viewer.
*) Discrete event simulation.
*) Prototype support for OS/2 Presentation Manager (under continuing 
   development).

System Requirements

*) IBM-compatible PC with a 386 or better running OS/2 2+.
*) 8Mb or more memory recommended.
*) Approx 10Mb disk space for compiler, tools and sources + approx
   16Mb swap space.

Package Contents

*) Compiler and tools.
*) Library sources.
*) Example sources.
*) Online documentation in .INF format.
*) Free technical support via email.

Available now at a special introductory offer of UKP290+VAT for a
single-user licence with a royalty-free runtime. Please ask for details of
site licences and educational discounts.

A white paper on Algol 68 for OS/2 is available - please ask us for it.
Algol 68 will shortly be available for other operating-systems on IBM PCs,
and also for SPARC processors and for Inmos Transputers (T800 & T9000).
For details of future products and for release dates for other platforms,
please ask to be put on our mailing list.

Contact Oxford and Cambridge Compilers on (+44) 01223 572074 or email to
enquiries@occl-cam.demon.co.uk or write to:

    Oxford and Cambridge Compilers Ltd
    55 Brampton Road
    Cambridge
    CB1 3HJ
    UK

 ============================================================
 From the 'New Product News' Electronic News Service provided
 via AOL (Keyword = New Products) & Delphi (GO BUSINESS PROD)
 ============================================================
 This information was processed from data provided by the 
 company or author mentioned. For additional details, please 
 contact them directly at the address/phone number indicated.
 All trademarks are the property of their respective owners.
 ============================================================
 All submissions for this service should be addressed to:
 BAKER ENTERPRISES,  20 Ferro Dr,  Sewell, NJ  08080  U.S.A.
 Email: RBakerPC (AOL/Delphi), rbakerpc@delphi.com (Internet)
 ============================================================
