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 02:37 PM Aug 12 2002 12:19 PM Jul 27 2017
Run.e 18 02:30 PM Aug 12 2002 12:19 PM Jul 27 2017
deflevel.e 675 07:29 PM Apr 04 2001 12:19 PM Jul 27 2017
deflevel.e.original 1689 07:29 PM Apr 04 2001 12:19 PM Jul 27 2017
dm.e 4108 06:44 PM Apr 04 2001 12:19 PM Jul 27 2017
screenshot.gif 1942 02:36 PM Aug 12 2002 12:19 PM Jul 27 2017
todo 607 07:32 PM Apr 04 2001 12:19 PM Jul 27 2017

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