Voorstudie
project
grafische scheme-evaluator
Naam : Van Belle Werner
Rolnummer : we47091
Wat
De bedoeling is een educatieve
scheme te schrijven die hetgeen hij evalueert achter de schermen nu ook
eens op
het scherm zet. Deze schermuitvoer zal hoofdzakelijk bestaan uit
environment-diagrammen.
Omschrijving van
het beoogde programma
Het
programma is ZONDER editor. Dus het enige wat het programma zal kunnen
is
Scheme-code uitvoeren.
Het
tracen van de instructies gebeurt op Borland-style F8 : step over. De
beoogde
actie wordt in één keer (voor de gebruiker toch) uitgevoerd en dan op
het
scherm gezet. F7 wordt gebruikt om al de acties die uitgevoerd worden
te
tekenen. (Step into)
Schermopbouw
: het grootste bovenste deel van het scherm bestaat uit de
environment-diagrammen. Dit stuk scherm kan gescrold worden met de
pijltoetsen.
Het
onderste deel van het scherm bestaat uit een viewer voor de source. In
dit deel
van het scherm wordt de gebruiker op geregelde tijdstippen
geconsulteerd.
Verdeling in
deelproblemen
De
evaluator : De problemen hier bestaan uit de aanpassingen aan de
environments.
Ze moeten niet enkel weten wat ze horen te weten maar ook hun positie
op het
scherm en dergelijke. Nog een probleem is de trace into en de step
over.
Documentatie : Het boek van Abelson en Sussman : Structuur en
interpretatie van
computer-programma's.
De
grafische interface : Deze zal om te beginnen als abstractie worden
gedefinieerd zodat ik nadien het programma op eenvoudige wijze naar
andere
computers kan transporteren. Deze interface is niet zozeer gericht op
DIT
programma, maar meer gericht op algemeen gebruik. Documentatie :
manuals van
allerhande Scheme-interpreters.
De
grafische shell : Dit deel van het programma zal alles op het scherm
zetten
door gebruik te maken van de grafische interface. Deze procedures zijn
zeer
specifiek voor dit programma. Deze shell zorgt ook zelf voor de update
van het
scherm. Een andere manier is er niet om iets op het scherm te krijgen.
De
hardware-configuratie
Het eerste doel is dit programma
op een PC, met VGA, EGA, CGA en Hercules-kaart te laten werken. De
scheme die
gebruikt zal worden is PC-scheme. Deze heeft een grafische interface
die een
afkooksel is van de BGI. Even een verklaring waarom deze keuze. De
meeste
mensen hebben een PC en omdat het programma educatief bedoelt is ben ik
moreel
verplicht het op een PC te laten werken. Een andere reden is dat ik
thuis zelf
dergelijk ding heb.
Naargelang de tijd die overschiet
kan ik me eens amuseren met het programma op een Macintosh te laten
draaien.
Deze laatste wens is dus duidelijk optioneel.
Dan nu even een
tijdschema uit m'n mouw schudden
De
grafische interface wordt eerst als basis gedefinieerd. Ik wil hiermee
zeggen,
werkend maar slecht.
8 uur, 2 weken, 31 januari moet dit zeker af zijn
Dan
ga ik de evalutor in gang steken. Gewoon een werkende scheme
10 uur, 2,5 weken, 17 februari
De
grafische shell wordt als dummy gedefinieerd : hij ontvangt alle
commando's
maar zet ze gewoon op het tekst-scherm
4 uur, 1 week, 24 februari
De
evaluator aanpassen zodat er getraced kan worden.
4 weken, 7 april
Nu
komt de grafische shell die alles werkelijk op het scherm zet
3 weken, 28 april
Testen
en debuggen van het geheel (dit wil niet zeggen dat ik de apparte
onderdelen
niet zal testen)
2 weken, 13 mei
Als dit allemaal werkt denk ik
niet dat er
nog veel tijd gaat overschieten...