Skip to main content navigation
parent site logoSite logo

Projects archive / Definitive Definition Maintainer

Code:definitivedmWard2001
Title:Definitive Definition Maintainer
Author:Ashley Ward
Date:4-Apr-2001
Type:model
Funding:PhD - PhD thesis
Short description:Definitive script implementing definition update
EM Technologies:tkeden, %eden
Keywords:simulation
empublic references:
EMpress references:
Web site references:
Previous locations:~ashley/PhD/Tkeden/Expts/DM

It is common to prove the generality of a programming notation by writing an implementation of it in itself. I wondered if it were possible to write an implementation of Eden in Eden.
This is a tkeden model which implements a definition store with four locations for definitions in its "symbol table" (more than four is an exercise left to the reader :).
From the definition text, the left hand side and right hand side are calculated (only one-character symbol names, single digit integers and an infix plus operator are allowed to keep the parsing simple), and dependencies and triggers. These are used to calculate the level of each definition, which is used to form an evaluation ordering. The evaluation process is triggered on changes to definitions, and produces values for each definition. The "symbol table" that all this is stored in is shown in a simple Scout window.
I have attempted to use dependency as much as possible in the model.
deflevel.e.original is an attempt to improve the dependency for the level definitions in dm.e, and deflevel.e is an improvement on that.
Eden's various problems with lists cause problems when writing a model such as this, so the model was not very easy to write. It probably contains some bugs.
I wrote the model within the tkeden interface, saving it out afterwards, rather than coding directly into a text editor, hence the script ordering may be a little strange.

definitivedmWard2001 is available locally within DCS at /dcs/emp/empublic/projects/definitivedmWard2001
Download definitivedmWard2001.tar.gz
Uncompressed, definitivedmWard2001 is 10.7 Kbytes (in 7 files).
Your download will be smaller as it will be compressed.
Help on extracting the files from the download.
README.xml 1956 03:37 PM Aug 12 2002 04:05 PM Dec 15 2014
Run.e 18 03:30 PM Aug 12 2002 04:05 PM Dec 15 2014
deflevel.e 675 08:29 PM Apr 04 2001 04:05 PM Dec 15 2014
deflevel.e.original 1689 08:29 PM Apr 04 2001 04:05 PM Dec 15 2014
dm.e 4108 07:44 PM Apr 04 2001 04:05 PM Dec 15 2014
screenshot.gif 1942 03:36 PM Aug 12 2002 04:05 PM Dec 15 2014
todo 607 08:32 PM Apr 04 2001 04:05 PM Dec 15 2014

empublic system initially created by Ashley Ward with assistance from Chris Roe and Meurig Beynon.