Quote:
Originally Posted by algernong
Ich kann aber kein Assembler, ich will gerne bei den TMs auf dem Papier bleiben. Hab schon mit einem Startzustand angefangen, wohin zeichne ich den fuer das Fenster?
(Hab meinen Beitrag davor noch erweitert)
|
Dann musst du zunächst eine teschniche Implementierung der TM bauen, z.B. Einen Interpreter, wie du dann daraus ein Fenster macht ist Sache der Implementierung.
Edit:
Da ich nun am PC bin kann ich dir sogar ein konkretes Beispiel geben:
Sagen wir ich würde einen Interpreter zu Verfügung stellen für eine 3 Band Turingmaschine. Die TM würde das erste Band als Arbeitsband verwenden, das zweite Band hingegen wäre das GUI band, dort werden in Präfixfreien Wörtern die GUI Komponenten definiert, mit einer KomponentenID, einem Namen, Positionsdaten, und allen weiteren Infos die benötigt werden (Caption, Style, etc.). Sobald der Kopf auf dem zweiten Band auf dem Ersten Blank hinter dem letzten Symbol steht wird das GUI neu gezeichnet.
Das Dritte Band würde die Eventqueue darstellen, die Events werden als präfixfreie Konkatinationen aus dem Komponentename, dem Eventtyp und eventueller weiterer Parameter dargestellt werden. Die Turingmaschine muss sich selbständig darum kümmern wie diese Eventqueue behandelt wird, der Interpreter hängt einfach nur neue Events an das Ende der Queue dran.
Die Ausführung ist eine simple Simulation der TM, mit den oben genannten Eigenschaften für Band 2 und 3.
Ich bin sicher das hier in diesem Forum genug Leute wären die einen solchen Interpreter Problemlos umsetzen könnten, oder in anderen Worten: "Die Funktion ist offensichtlich Berechenbar", und so hättest du auch deine GUI's mit Tuningmaschinen, und wenn du willst darfst du mir gerne eine TM für diesen Interpreter Zeichnen :P
Ob es sich lohnt für so etwas Turingmaschinen zu verwenden statt z.B. C# ist dann wieder eine ganz andere Frage.