Wolfgang De Meuter
Last revision: November 3th, 1997

Agora Implementations

There are several implementations of (several flavours of) Agora available.


The most recent version of Agora is Agora98. Agora98 is really hot. It was implemented in Java 1.1 and allows full access to the implementation and to all Java API's. Feels great to dynamically open windows in your webbrowser (by talking to the virtual machine in Agora98). Check out the agora98 homepage (we called it Agora98 because there is already an Agora97, a modification of the C++ version.


Agora96. was implemented in C++ and allows full access to the implementation. Releases of Agora96 are available for Macintosh and Windows (NT & 95). The application comes with several examples and a 90-page language manual.


The first 'official' version of Agora was Agora94. A Smalltalk implementation of Agora94 (implemented in Visualworks Smalltalk) can be fetched from our FTP-site. In the Agora94 directory you find papers, a manual, the Smalltalk file outs, examples and a paper giving a full description of Agora94. Be sure to read the readme file before installing the system!


Agora-S is a down scaled variant of Agora94 implemented in Scheme (hence the S). The difference between Agora-S and Agora94 is comparable to the difference between Scheme and more verbose functional programming languages like ML, Lisp or Haskell. Agora-S was designed to be a full-fledged programming language containing only a minimal number of constructs, much in the spirit of Scheme itself.

Agora-S is a compiler compiling Agora-S code to Scheme. It is not very-well documented. Some minor documentation can be found on our WWW-site. The implementation can be FTP'ed for MacGambit.


In order to support our paper at ECOOP'95, a denotational semantics of Agora is implemented in Scheme and in Gofer. It is a very tiny version of (non-reflective) Agora implemented in order to make our inheritance mechanism clear. This small language is called MiniMix. Those of you that have no time to learn 'full-fledged' Agora but would like to experiment with our inheritance mechanism are best off with MiniMix. The implementation, together with a few examples, is available in Scheme and in Gofer from our FTP-site.