XGC Technology

Fax +44 1483 433312

New Technology

Today's computers are so powerful that most compilations complete in a few seconds. Those of you who remember compiling at 50 lines per minute on a VAX 780 will be glad those days are gone forever. However, you may ask if there is some way of getting more benefit from a 2GHz 1GByte PC.

We have long known that compilers are best written in a high-level programming language. While there are no commonly used languages designed for writing compilers, there are functional and logic languages that are considerably better than C.

In the past, it was not possible to write a production-quality compiler in such languages. We tried in 1987. The outcome was a product that was too big for a PC and too slow for project use. We believe this is no longer the case, and we are building a demonstration compiler:

  • As an existence proof
  • To get statistics about compile-time performance
  • To decide how such a compiler can be demonstrated to be correct

Compared with current technology, where an Ada compiler is one and a half million lines of code, a new technology compiler will be less than 50,000 lines. That is 1/30 the size. And that includes the assembler and linker. And new features such as comprehensive support for reviewable code.

The demonstrator is targeted to the 1750. This gives us a target simulator for free, and using M1750 Ada, we can compare the performance and code quality of the new technology compiler with the latest optimizing compiler.

Beyond the demonstrator, we require new funding to build a production-quality compiler. This will be for the safety-critical subset of Ada 95 known as SPARK and targeted to a custom microprocessor.

If you are interested in participating, please email to nettleton@xgc.com.


Towards a Demonstrably Correct Ada Compiler,

Proceedings of the 2007 ACM international conference on SIGAda

Fairfax, Virginia, USA

SIGAda 2007 Presentation

First Demonstrator

This is the first technology demonstrator for new technology. Download the file, unzip and cd to the directory 'demo', or 'examples'. Type make, make run.

The demonstrator runs on MS Windows XP and requires Cygwin.

Download m1750-ada-2a1-cygwin.gz

See the release notes