Skip to main content navigation
parent site logoSite logo

Projects archive / LSM Presentation: EM for graphics with tkeden

Code:lsmpresentationWard2001
Title:LSM Presentation: EM for graphics with tkeden
Authors:Ashley Ward, Meurig Beynon
Date:4-Jul-2001
Type:model, presentation
Funding:PhD - PhD thesis
Short description:"Powerpoint" presentation for Libre Software meet
EM Technologies:tkeden, %eden, %scout, %donald, %sasami
Keywords:game, tutorial, presentation, demonstration
empublic references:jugsBeynon1988
EMpress references:
Web site references:http://lsm2001.abul.org
Previous locations:~ashley/PhD/LSM/Presentation

I saw a presentation about an OO LOGO system, which initially annoyed me due to lots of flashy moving graphics: I thought "uh oh: a Powerpoint freak". As the presentation moved on, it transpired that the presentation was actually not in Powerpoint, but in the OO LOGO system itself. This impressed me: there was actually a point to the flashy moving graphics.
Later, I was presenting at a Libre Software Movement conference in Bordeux. I wrote this tkeden model on the train. Due to lack of time, only the first nine slides are in tkeden: the remaining 16 are in HTML, for viewing in Netscape.
The presentation uses a variant of the jugsBeynon1988 model on the third slide. After having presented this and talked about dependency a little (showing off that the presentation is in fact in our tool), a good thing to do is to go back one slide (you move through slides by pressing left and right cursor keys: note these are observed by bwin: the large Scout window which is behind everything else) and say "left -= 10;" to Eden, which should broaden both the left and right margins.
I also used 3doxoRoe2001, oxoGardner1999 and cruisecontrolBridge1991 in this presentation, but they are not included here.
The model is a good example of the use of the FontHeight and StringWidth Eden functions (which I reimplemented in tkeden in order to create this model), and the screen_width observable (again, new for this model): note how the text re-centres if you resize the window. It shows how to use the macro Eden function to create multiple parameterised instances of some code (a little like instantiating an "object"). It shows how to change the Scout defaults to create a large window with a black background, and how to set fonts for some Scout text. It shows how to set up multiple Scout "pages" and how to set the screen variable to just one of these pages. It shows how to show part of the script on the screen (see the displayed definitions in the Scout window). The Sasami window is initially minimised (hidden) but it is popped up through the use of a small piece of Tcl when required.
As well as being centred on the screen, note also that the pieces of text are dependent upon the piece of text above them for their Y coordinate. Note that pieces of script (eg s601) that are shown on the screen can be modified, which are then automatically re-executed in order to update the internal state.
The presentation was initially hacked to work on a Linux laptop with the Enlightenment window manager, but it seems to work OK on other platforms too mostly.

lsmpresentationWard2001 is available locally within DCS at /dcs/emp/empublic/projects/lsmpresentationWard2001
Download lsmpresentationWard2001.tar.gz
Uncompressed, lsmpresentationWard2001 is 275 Kbytes (in 35 files).
Your download will be smaller as it will be compressed.
Help on extracting the files from the download.
README.xml 3414 08:13 PM Aug 08 2002 04:05 PM Dec 15 2014
README.xml~ 3369 07:52 PM Aug 08 2002 04:05 PM Dec 15 2014
Run.e 27 05:23 PM Apr 22 2002 04:05 PM Dec 15 2014
present.script 9848 03:19 PM Apr 26 2002 04:05 PM Dec 15 2014
present.script~ 9532 05:41 PM Jul 08 2001 04:05 PM Dec 15 2014
sasamieg.sasami 880 12:20 AM Jul 05 2001 04:05 PM Dec 15 2014
screenshot.gif 6743 05:59 PM Apr 22 2002 04:05 PM Dec 15 2014
utils.eden 2849 01:26 PM Jul 04 2001 04:05 PM Dec 15 2014
html/ 4096 12:51 PM Jul 15 2001 04:05 PM Dec 15 2014
jugs/ 4096 01:35 PM Mar 26 2002 04:05 PM Dec 15 2014

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