gwX Forum
Würden Sie gerne auf diese Nachricht reagieren? Erstellen Sie einen Account in wenigen Klicks oder loggen Sie sich ein, um fortzufahren.

Die Scriptengine und das Parsen

2 verfasser

Nach unten

Die Scriptengine und das Parsen Empty Die Scriptengine und das Parsen

Beitrag  Eddy So 31 Mai 2009 - 23:05

Mir sind zwei unschöne Sachen beim Script-Parsing aufgefallen :/ (Eig. beim Debugging):

- Fehlt ein Semikolon bei einer Anweisung, meldet die Engine in der nächsten Zeile ungültige Symbole
- Schließt man zu wenig Blöcke (if{}Wink innerhalb einer Methode, wird sie gar nicht erst ausgeführt (!!). Schließt man zuviele, gibt es eine nicht abgefangene Zugriffsverletzung. Ersteres hat mich mindestens ne halbe Stunde vergebliches Rumprobieren gekostet.

Eddy

Anzahl der Beiträge : 509
Anmeldedatum : 14.01.09
Alter : 29

http://systems.bitfarmclan.de

Nach oben Nach unten

Die Scriptengine und das Parsen Empty Re: Die Scriptengine und das Parsen

Beitrag  Carli Di 2 Jun 2009 - 17:20

ich arbeite grad an 'ner komplett neuen Sprache, aber mit dem alten gwX-Script Compiler kannst du dich vlt. mal befassen. Im Prinzip ist nur der Parser etwas unausgereift. Dieser Speichert sein Ergebnis in folgende Klasse:
Code:
  Tknoten = class (Tcomponent)
  public
  typ:Ttyp;
  index,line:integer;
  token:string;
  elements:array of Tknoten;
  above:Tknoten;
  procedure parse(s:pchar);
  procedure ordne(a:Tknoten);
  procedure ordne_;
  function compile(fn:Tfunktion;r:reg;rr:regs):string; cdecl;
  destructor destroy; override;
  end;
Du musst eigentliuch nur den Part neu schreiben, der diese Knoten erzeugt, um den Rest kümmert sich der Compiler, der geht eigentlich einwandfrei.

Carli
Admin

Anzahl der Beiträge : 1001
Anmeldedatum : 02.01.09

Nach oben Nach unten

Nach oben


 
Befugnisse in diesem Forum
Sie können in diesem Forum nicht antworten