Seite 2 von 14
Verfasst: 27.06.2008 09:32
von gekkonier
hardfalcon hat geschrieben:Was bringt PB denn als Skriptsprache, wenns trotzdem immer noch kompiled werden muss (wenn auch in Bytecode anstatt Maschinencode)?

Was bringt Purebasic, gibt ja eh schon C....
Was bringt Java, gibt ja schon Cobol und Fortran....
Was bringen hunderte Tetrisclones, gibt ja schon eines...

Verfasst: 27.06.2008 11:06
von ZeHa
hardfalcon hat geschrieben:Was bringt PB denn als Skriptsprache, wenns trotzdem immer noch kompiled werden muss (wenn auch in Bytecode anstatt Maschinencode)?

Ganz einfach: das geht per Laufzeit.
Das heißt, Du könntest ein Spiel programmieren, und die Gegner-AI oder sonstige Dinge mit PB skripten. Diese Skripte liegen als Dateien in Deinem Data-Verzeichnis und werden zur Laufzeit geladen, in Bytecode kompiliert und dann während des Spiels ausgeführt.
Der Vorteil ist, daß Du diese Skripte jederzeit ändern kannst, ohne ständig Deine Engine neu kompilieren zu müssen. Außerdem kannst Du jederzeit einfach einen neuen Gegner hinzufügen, indem Du einfach das Skript eines anderen Gegners kopierst und ein bißchen anpaßt.
Andere Skriptsprachen werden ebenfalls in Bytecode kompiliert, ist also überhaupt nichts ungewöhnliches. Es ist nur so, daß das direkt vor dem Ausführen geschieht und es für Dich somit nicht "zwei Schritte" sind, bzw. Du merkst es halt nicht (es sei denn es dauert extrem lang, aber das ist zum einen unwahrscheinlich bei kurzen Skripten, und zum anderen ist es oft auch so, daß die Bytecode-Files dann direkt abgespeichert werden, sodaß es beim nächsten Start direkt eingelesen werden kann, ohne daß es erst neu kompiliert werden muß).
Neuer Core
Verfasst: 27.06.2008 14:59
von cxAlex
So, hier gibts mal ne neu Version des Interpreters. Er sollte schneller sein (vor allem wenn der Debugger deaktiert ist), optimiert den Code noch stärker und läuft stabiler.
einfach in den Ordner compiler\ kopieren.
Download
Verfasst: 28.06.2008 11:49
von cxAlex
Wieder ne neue Version. Entweder oberer Link oder
hier. Schreibt mir doch bitte wenn ihr Bugs findet, Verbesserungsvorschläge habt. Bis jetzt hab ich mehr Feedback zum Editor als zur Skriptsprache.
Verfasst: 28.06.2008 12:16
von ts-soft
> Bis jetzt hab ich mehr Feedback zum Editor als zur Skriptsprache
Naja, das liegt wohl an der noch fehlenden Hilfe

Verfasst: 28.06.2008 12:31
von cxAlex
Das sollte nicht das Problem sein.
Hier gibt es eine (unfertige) Version der Hilfe.
Vieles ist aus der PureBasic Hilfe übernommen, und In den Beispielskripts werden ,glaube ich, alle der KeyWords die (noch) nicht in der Hilfe stehen erklärt (z.B. Interface,ImportDll,Clear...)
Verfasst: 28.06.2008 13:44
von hardfalcon
Hmm, wenns zur Laufzeit in Bytecode übersetzt wird, dann isses natürlich interessant.

Verfasst: 28.06.2008 14:01
von ts-soft
cxAlex hat geschrieben:glaube ich, alle der KeyWords die (noch) nicht in der Hilfe stehen erklärt (z.B. Interface,ImportDll,Clear...)
Die fehlen dort noch
Da die Syntax der von PB sehr sehr gleicht, gibts für PB-User so zur Zeit
keine Gründe es zu nutzen, für Programmiereinsteiger/Umsteiger schon
eher.
Interessanter wird es für PB-User, wenn man es als Embedded-Language
nutzen könnte, für eigene Anwendungen. Mischa hat sowas mal gemacht.
Compiler als DLL oder UserLib, Kommunikation von Host zur Scriptsprache.
Nur so als Vorschlag
Gruß
Thomas
Verfasst: 28.06.2008 14:02
von Josef Sniatecki
Da macht ja die Shell-Konsole das gleiche, oder?
Denn wenn man Batch-Dateien mit Shell ausführt, werden diese
doch auch als Byte-Code ausgeführt.
dll
Verfasst: 28.06.2008 14:14
von cxAlex
Eine Dll-Version ist schon in Arbeit, damit kann man Befehle im eigenen Programm von PaladiumX aus aufrufen lassen.