Skip to main content


The Empirical Modelling research group has constructed various software over the years in order to support practical modelling. The primary emphasis in this work has been on experimental tools to support exploratory modelling with definitive notations. >EDEN is the primary software tool, dating from 1987. It now has two web-enabled variants: WEB-EDEN (2008) and JS-EDEN (2011). The >ADM is another tool which was initially implemented as a limited command-line program, and later as an ADM to Eden translator. >CADENCE (2009) is a tool that supports EM using a radically different approach to capturing 'state-as-experienced' that overcomes some of the significant problems encountered in using definitive scripts.

Other software projects have been constructed, but have not involved as much development or testing effort as EDEN. Some of these projects are listed alphabetically below for your interest. They are not all documented in this website section -- try looking for the authors' project/thesis writeups or contact us if you want more information.

  • adm, adm2 and adm3 are ADM to Eden script translators. The first two were written by Edward Yung. adm3 was written by Patrick Sun.
  • am by Mike Slade is the original interpreter for the Abstract Definitive Machine.
  • arca is an Arca to Eden script translator.
  • DAM (on the Acorn RiscPC platform) is the Definitive Assembler Maintainer API, by Richard Cartwright - a definition maintainer constructed mainly in ARM assembler.
  • !donald (on the Acorn RiscPC platform) is a Donald to DAM translator, written by James Allderidge and later extended by Ashley Ward.
  • CADENCE is an interpreter developed by Nick Pope that redresses the strong emphasis in EDEN on scripts, files and notations by promoting direct manipulation of structure. It also offers better support for the transition from construals to programs.
  • demomaker by Simon Yung enables tkeden sessions to be recorded and then later replayed, together with additional commentary.
  • drawScout by Karl King is an extension to EDEN that allows Scout windows to be created by direct manipulation.
  • dtkeden is a distributed variant of tkeden that was prototyped by Patrick Sun with contributions from Richard Cartwright. It has been used to implement models of concurrent systems by Sun and by Yih-Chang Ch'en. The most familiar application of dtkeden is a model of the Clayton Tunnel railway accident scenario to which James Taylor, Patrick Sun, Jonathan Woodforth, Eric Chan and Antony Harfield all contributed.
  • eden, heden, ceden, donald, scout, xeden, EX and bridge by Edward and Simon Yung were precursors to the current EDEN implementation.
  • EDEN is the generic name for the many versions of the tkeden interpreter that have been developed since Simon Yung first implemented a tk/tcl interface for the underlying evaluator for definitive notations. Ashley Ward made a major contribution to the subsequent development and maintenance of EDEN.
  • EdenLisp by Alan Cartwright is a definitive evaluator written in AutoLisp, a superset of Lisp, and interfaced with AutoCAD (a commercial Computer Aided Design package).
  • EMPE by Antony Harfield is the Empirical Modelling Presentation Environment. It is written as an extension to EDEN in Harfield's Graphical Environment Language (GEL).
  • Empirical Worlds by Richard Cartwright is a proof of concept application demonstrating virtual environments containing 3D shapes that are dependent on one another.
  • EWE is the Empirical Wool Environment by Ashley Ward, a Java applet which attempts to communicate EM ideas through a light-hearted illustrative notation for modelling sheep.
  • IEME by Allan Wong is the Integrated Empirical Modelling Environment. It is targeted to end users and attempts to support EM principles and offer better application and tool level support.
  • JaM is the Java Maintainer by Richard Cartwright - a definition maintainer API written in Java.
  • jeden is a proof of concept implementation of Eden in Java by Dominic Gehring, built to test the MoDD API.
  • JS-EDEN by Tim Monks is a web-enabled version of EDEN that is based on a close integration of EDEN with JavaScript and on HTML5. It is still in the process of development, with significant contributions from Nick Pope and Matt Cranham.
  • The LSD Engine is a multi-agent modelling environment developed as an alternative approach to software development for reactive systems developed in Moscow under the direction of Valery Adzhiev.
  • MoDD is the Maintainer of Dynamic Dependencies by Dominic Gehring - a definition maintainer API written in Java.
  • WEB-EDEN is a web-enabled variant of EDEN developed by Richard Myers. It uses a Windows Server to link clients to a suite of EDEN instances that run at the server end, and uses FLASH for the interface.
  • Wing by Allan Wong provides a definitive notation for defining windowing and graphics objects. It has a spreadsheet like user interface that allows users to manipulate definitions interactively.