![]() |
RUTIS Engine (Scripting) [WinCE spinnt]
DIES IST DIE ALTE VERSION VON RUTIS
Die neue Version gibts hier: ![]() ---------------------------------------------- Hi, Hier möchte ich euch eines meiner größten Projekte vorstellen. RUTIS Die "RunTime Script Engine" (RUTIS Engine) dient dazu, Scripte zur Laufzeit zu compilieren und auszuführen, um z.B. Die Funktionen von Programmen zu verändern, ohne diese neu zu compilieren. Durch eine sehr hohe Geschwindigkeit lassen sich sogar ganze Programme allein mit einem solchen Script erstellen. Die RUTIS Engine kann mehrere Compiler unterstützen wobei der Standardcompiler mit einem Delphi/Pascal Syntax arbeitet. - - - HINWEIS: INFOS ETWAS VERALTET - WERDEN BEI GELEGENHEIT KORRIGIERT - - - RUTIS bietet eine große Funktionsvielfalt:
![]() SVN-Portal: ![]() INFO : RUTIS unterliegt einer Creative Commons BY-NC-SA (DE) Lizenz INFO 2: Die nachfolgenden Links könnten des öfteren nicht funktionieren, da sie nach jedem neuen Upload ungültig werden. Auf der Projektseite dagegen sollten die Downloadlinks immer funktionieren. Ich entschuldige mich hier auch für eine solche Faulheit, die Links nur selten zu aktualisieren ^^ ![]() ![]() ![]() MFG |
Re: RUTIS Engine (Scripting)
Es fehlt: File_Manager.pas und myUtils.pas
|
Re: RUTIS Engine (Scripting)
Liste der Anhänge anzeigen (Anzahl: 3)
Danke für den Hinweis ich habe die Dateien mit angehängt.
ANBEI: RESTLICHE DOWNLOADS, DIE NICHT MEHR IN DEN ERSTEN POST GEPASST HABEN MFG |
Re: RUTIS Engine (Scripting)
Was ist an deiner Script-Engine besser als an Sysygy Script Engine oder PascalScript?
Wie ich das bisher sehe sind se alle fast gleich. Was ich schon lange suche ist eine ScriptEngine die OOP unterstützt und leichtes kommunizieren zwischen Script<>Programm und unter Lazarus läuft ^^, hab schon langsam alle ScriptEngines durch (Python, Lua, PascalScript, Sysygy ScriptEngine) ^^ |
Re: RUTIS Engine (Scripting)
Muß Sie dass denn sein? Für ein Schulprojekt ist das doch eine Prima Sache? // Grüße / Martin
|
Re: RUTIS Engine (Scripting)
Stimmt auch wieder.
I'm sry.^^ Es ist schon wahnsinnig das das ein Schul-Projekt ist. Kommt mir bekannt vor^^, ich nahm auch immer extreme Projekte an und schaffte diese sogar. Einerseits Lob an dich. Anderseits wenn es OOP kann, bin ich begeistert und werde sehr schnell der erste Tester ^-^. MfG, Eugen |
Re: RUTIS Engine (Scripting)
Versuch mal DWS "Delphi Web Script" (gibts bei Sourceforge)... Geht aber nicht mit Lazarus, dafür OOP und 99.9% kompatibel zu Delphi (ältere Versionen).
Ich muss auch sagen: Eine Leistung, vor der ich den Hut ziehe. |
Re: RUTIS Engine (Scripting)
Erstmal Danke für eure Antworten.
Aber @EugenB: Ich finde das etwas verletzend, in so einer Art darauf hinzuweisen, was denn jetzt bei meiner Engine besser wär, als bei der eines anderen. Wenn es so ginge wieso sollte man dann überhaupt noch sowas programmieren... Ich nehms dir aber nicht übel :wink: Aber als Antword darauf: Die Geschwindigkeit! Ich habe mir mal die Sysygy angekuckt und gesehen, dass die mit Variant arbeitet, was nicht gerade schnell ist. Ich habe es zuerst auch der einfachheit wegen mit Variant gemacht, danach aber einen eigenen Datentyp geschrieben, der wie Variant arbeitet. Dieser ist aber SEHR viel schneller, da er auf die Aufgaben in der Engine optimiert ist.
Delphi-Quellcode:
Die Geschwindigkeit ist dadurch um einiges gestiegen.
TRutisStackItem = record
case VTyp : TRutisVarType of vArray, vPointer : (VPointer : PRutisStackItem); vInteger : (VInteger : Integer); vSingle : (VSingle : Single); vBoolean : (VBoolean : Boolean); vString : (VString : PAnsiString); end; Insgesamt ist die Engine stark auf Geschwindigkeit ausgelegt. Doch am wichtigsten: Die Engine ist NOCH NICHT FERTIG !! Das habe ich ja schon erwähnt und deswegen ist es nicht verwunderlich, dass es noch kein OOP gibt :wink: Wer sich mal für die Geschwindigkeit interessiert, kann ja mal das Script "TEST Speed.rutis" ausführen. Da ist auch nochmal ein Vergleich von den zwei Typen von Externen Funktionen, die die Engine unterstützt (Die Eine macht einen Umweg über Variant, die Andere schreibt direkt auf den Stack) MFG |
Re: RUTIS Engine (Scripting)
Hallo olee,
Ich entschuldige mich, das es so verletzend rüber kam. :( Wird nicht mehr vorkommen.^^ Zitat:
Zitat:
Zitat:
MfG, Eugen |
Re: RUTIS Engine (Scripting)
Ich hab mich etwas mehr mit RUTIS auseinander gesetzt, vorallem mit dem Quellcode.
Nach 300 $IFDEFs konnte ich es auch unter Lazarus Compilieren, musste dabei leider OpenGL aus kommentieren, deswegen gehen auch einige Tests nicht mehr Aber der Speedtest funktioniert, immerhin^^. Wie wäre es wenn du für das Projekt, da es ja OpenSource ist, bei code.google.com oder bei xp-dev.com einen kostenlosen svn server dir dort erstellst, dann könnten man leichter die ganzen änderungen zuschicken^^ PS: Funktioniert dieser FPC Code auch unter Delphi? (hab keins zum Testen):
Delphi-Quellcode:
Wenn dies auch Funktioniert, dann würde man sich 200 solcher IFDEFs Sparen
//Delphi Code
fCode := @ScriptData.Code; //FPC Code fCode := @ScriptData^.Code;
Delphi-Quellcode:
Es gibt ja auch einen $MODE DELPHI, aber ich habe gelesen das es dann irgendwo zu größeren Problemen führt oder sowas.
fCode := @ScriptData{$IFDEF FPC}^{$ENDIF}.Code;
PPS: Bei überfliegen des Codes, kam mir die Frage, könnte man mit dieser ScriptEngine dann wohl auch andere Sprachen nutzen? also zb Script im C-Style, PHP-Style o.ä? Ich mein jetzt nicht das es auch andere Scritpsprachen sein sollen (Pascal reicht völlig aus ^^), ich will es nur wissen ob es möglich wäre^^ MfG, Eugen |
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:33 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz