AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte RUTIS Engine (Scripting) [WinCE spinnt]
Thema durchsuchen
Ansicht
Themen-Optionen

RUTIS Engine (Scripting) [WinCE spinnt]

Ein Thema von olee · begonnen am 14. Jun 2009 · letzter Beitrag vom 20. Aug 2010
Antwort Antwort
Seite 1 von 11  1 23     Letzte »    
Benutzerbild von olee
olee
Registriert seit: 16. Feb 2008
DIES IST DIE ALTE VERSION VON RUTIS
Die neue Version gibts hier: RUTIS v2
----------------------------------------------

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:
  • Globale sowie lokale Variablen
  • Verschachtelbare Funktionen und Methoden, die auch rekursive Algorithmen lösen können.
  • Beliebige Deklaration von Records
  • Unterstützung von Pointern und Arrays
  • Einfache Verknüpfung von Hostprogramm und Script mittels speziellen, beliebig erstellbaren Verbindungsfunktionen.
  • NEU: Methode-Variablen (bisher jedoch nur parameterlose Prozeduren)
  • NEU: Formular Interface, wodurch sich ganze Anwendungen mit GUI erstellen lassen!
  • NEU: Aufruf von DLL-Funktionen über die deklaration im Script als 'external' ! (Hier ein DANKE an 'Astat')
  • uvm.
Das sollte vorerst an Informationen reichen.

RUTIS PROJEKTSEITE (Downloads, Infos usw.)
SVN-Portal: http://www.xp-dev.com/sc/77518


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 ^^
RUTIS Setup 1,04 MB RUTIS (zip) 1,28 MB RUTIS (Source) 2,08 MB


MFG
Codename: Performancepumpe

Geändert von olee (20. Mai 2011 um 04:50 Uhr)
 
omata

 
Delphi 7 Enterprise
 
#2
  Alt 14. Jun 2009, 21:17
Es fehlt: File_Manager.pas und myUtils.pas
  Mit Zitat antworten Zitat
Benutzerbild von olee
olee

 
Turbo Delphi für Win32
 
#3
  Alt 15. Jun 2009, 09:34
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
Miniaturansicht angehängter Grafiken
screen03_143.jpg   screen02_134.jpg   screen01_155.jpg  
Björn Zeutzheim
  Mit Zitat antworten Zitat
EugenB

 
Lazarus
 
#4
  Alt 16. Jun 2009, 22:54
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) ^^
  Mit Zitat antworten Zitat
Benutzerbild von mschaefer
mschaefer

 
Delphi 12 Athens
 
#5
  Alt 16. Jun 2009, 23:15
Muß Sie dass denn sein? Für ein Schulprojekt ist das doch eine Prima Sache? // Grüße / Martin
Martin Schaefer
  Mit Zitat antworten Zitat
EugenB

 
Lazarus
 
#6
  Alt 16. Jun 2009, 23:18
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
  Mit Zitat antworten Zitat
alzaimar

 
Delphi 2007 Enterprise
 
#7
  Alt 17. Jun 2009, 04:35
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.
  Mit Zitat antworten Zitat
Benutzerbild von olee
olee

 
Turbo Delphi für Win32
 
#8
  Alt 18. Jun 2009, 10:09
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

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:
  TRutisStackItem = record
    case VTyp : TRutisVarType of
      vArray,
      vPointer : (VPointer : PRutisStackItem);
      vInteger : (VInteger : Integer);
      vSingle : (VSingle : Single);
      vBoolean : (VBoolean : Boolean);
      vString : (VString : PAnsiString);
  end;
Die Geschwindigkeit ist dadurch um einiges gestiegen.
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

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
Björn Zeutzheim
  Mit Zitat antworten Zitat
EugenB

 
Lazarus
 
#9
  Alt 18. Jun 2009, 10:32
Hallo olee,

Ich entschuldige mich, das es so verletzend rüber kam. Wird nicht mehr vorkommen.^^

Zitat von olee:
Aber als Antword darauf:
Die Geschwindigkeit!
Ich werd mir mal die Tests durchgucken, hört sich doch jetzt gut das es sogar Schneller als die Sysygy Engine ist =)


Zitat von olee:
Doch am wichtigsten: Die Engine ist NOCH NICHT FERTIG !!
So etwas darf nie fertig werden, wirst du dieses Projekt, auch nach dem die Schulzeit vorbei ist, auch weiter "pflegen" updates posten etc? Denn dann würde es große Konkurrenz zu PascalScript machen

Zitat von olee:
Das habe ich ja schon erwähnt und deswegen ist es nicht verwunderlich, dass es noch kein OOP gibt
Ui, also ist OOP geplant? =)

MfG,
Eugen
  Mit Zitat antworten Zitat
EugenB

 
Lazarus
 
#10
  Alt 18. Jun 2009, 11:48
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:
//Delphi Code
fCode := @ScriptData.Code;

//FPC Code
fCode := @ScriptData^.Code;
Wenn dies auch Funktioniert, dann würde man sich 200 solcher IFDEFs Sparen
fCode := @ScriptData{$IFDEF FPC}^{$ENDIF}.Code; Es gibt ja auch einen $MODE DELPHI, aber ich habe gelesen das es dann irgendwo zu größeren Problemen führt oder sowas.

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
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 11  1 23     Letzte »    


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:35 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz