Die meisten Verbesserungen fanden beim Compiler statt. Dieser läuft nun viel stabiler und kann nun auch mit komplizierteren Strukturen umgehen. Außerdem sind die generierten Fehlernachrichten viel detaillierter.
Des Weiteren wurde die intern gespeicherte Struktur des Scripts - also die Deklarationen von Variablen, Konstanten und Methoden - weitaus verbessert, was sich auch im Editor unter "Declaration Tree" nach dem Kompilieren eines Scriptes betrachten lässt.
Außerdem gibt es ein neues, sehr hilfreiches Konstrukt - genannt "external class". dies sieht z.B. wie folgt aus:
Delphi-Quellcode:
TBall = external class
private
fOwner : TBall;
public
x, y : Single;
vx, vy : Single;
end;
Der Compiler generiert daraufhin einen Datentyp TBall, welcher mit seinen Feldern exakt dem gleichen Datentyp aus dem Hostprogramm entspricht.
D.h., man kann sich über eine Schnittstelle zum Hauptprogramm einen Pointer auf ein solches Objekt beschaffen, und die darin enthalten Daten direkt manipulieren.
Dieses Feature von RUTIS findet auch umfangreiche Verwendung in der Game-Engine, welche ich zur Zeit entwickele. Dort wird RUTIS zur Steuerung der Spielmechanik verwendet, und kann durch diese external-classes direkt auf die Daten innerhalb der Engine zugreifen.
MFG