Seite 2 von 5

Verfasst: 28.09.2008 14:37
von Josef Sniatecki
Habe meine Entscheidung getroffen. Ich lasse es bei "5*(-(5+5))".
Sagt jetzt nicht, dass ich zu faul bin. :D

Verfasst: 28.09.2008 14:41
von Little John
STARGÅTE hat geschrieben:ja ja, PB lässt sogar so ein "schwachsinn" duchgehen und rechnet sogar richtig ^^:

Code: Alles auswählen

Debug 5----5
Hier die XXL-Variante:

Code: Alles auswählen

Debug 5------------------------------------------------5
Unnötig zu erwähnen, dass das Ergebnis 10 ist. ;-)

Gruß, Little John

Verfasst: 30.09.2008 21:49
von Josef Sniatecki
Habe mir mal die halbe Nacht genommen. (Herbstferien stehen an! <) )

2.0.2.0000:
- Beispiele hinzugefügt
- Funktionen definierbar
- Kleine Lecks behoben
- Viele kleine Bugs behoben

Wenn ihr Fragen,Bugs,Vorschläge oder Kommentare habt: Nur her damit!



Download:
http://www.file-upload.net/download-114 ... 2.zip.html



mfg Josef

Verfasst: 07.10.2008 14:45
von Josef Sniatecki
Neue Version - 2.1.1

Features:
- Kleiner Editor mit Ausgabeberiech
- Kommentierte Beispielcodes in Operno
- Neue Befehle

Download:
http://www.file-upload.net/download-116 ... o.zip.html


Zu den Quellcodes:
Der Hauptquellcode des Interpreters ist nur zum ansehen. Deswegen
habe ich auch meine Includes weggelassen. Zum Editor: Ihr dürft
den Sourcecode ruhig ändern und mir zuschicken.
Eure Ideen oder Hilfen weiß ich immer zu schätzen.



Hier zur aufklärung, wie der Interpreter funktioniert:

Zuerst wird der zugeschickte Code in kategorisierte Teile zerlegt.
Beispiel:

Code: Alles auswählen

100+200*(5+3)
wird zu ->
<Zahl:100><Operator:+><Zahl:200><Operator:*><Klammer:(>...
Alle zerlegten Teile werden in eine Liste gespeichert. Die Reihenfole
bleibt so wie sie ist. Danach geht der Interpreter jeden Token/Teil
durch und führt diese richtig aus.

Sowas nennt man einen "Token-Interpreter".

Wer mehr wissen will kann ruhig fragen. :wink:



mfg Josef

Verfasst: 07.10.2008 16:44
von kswb73
Ich habe mal sowas ähnliches (nur zum Rechnen) geschrieben. Ist es nicht mit einem Array viel einfacher? Dann kann man leichter auf die vorherigen und nachherigen Einträge zugreifen ohne wild mit nextElement() und PreviousElement() rumhantieren zu müssen. Nur halb beim löschen von Einträgen ist's etwas schwerer. Oder hast du da irgendeinen Trick?

Verfasst: 07.10.2008 17:06
von Josef Sniatecki
Nun ich arbeite mit einem List-Template, das ich selbst geproggt habe.
Da habe ich dann so meine eigenen und leichten Methoden.
Eine Array wäre zwar gut, jedoch möchte ich Kommandos während dem
Programmablauf einfügen können. Und dazu brauche ich eben eine Liste.

Wieso ich nicht die PB-Liste nutze? Naja, ohne mein Template würde mein
Interpreter garnicht möglich sein. Z.B. könnte ich keine Listen während
dem Lauf des Interpreters erstellen. Das Ziel meines Interpreters ist es
dynamisch zu sein.

Gut das du nachfragst. Hätte bestimmt auch andere Interessiert.

Verfasst: 07.10.2008 17:17
von Little John
Josef Sniatecki hat geschrieben:Nun ich arbeite mit einem List-Template, das ich selbst geproggt habe.
Das interessiert mich auch. Was ist denn ein "List-Template"?
Von Templates habe ich bei PB überhaupt noch nichts gehört.

Gruß, Little John

Verfasst: 07.10.2008 17:26
von Josef Sniatecki
Wie gesagt/geschrieben: Ich habe das Template für mich selbst
geproggt. In fast jedem Projekt von mir nutze ich mein Template.

Hier ist ein alter Thread (Der code ist aber noch neu :D ):
http://www.purebasic.fr/german/viewtopic.php?t=16835

Verfasst: 07.10.2008 17:34
von Little John
Josef Sniatecki hat geschrieben:Wie gesagt/geschrieben: Ich habe das Template für mich selbst
geproggt. In fast jedem Projekt von mir nutze ich mein Template.
Du hast immer noch nicht gesagt/geschrieben, was Du unter einem "Template" verstehst. Templates kenne ich von C++, wusste aber nicht dass PureBasic diese auch unterstützt.
Josef Sniatecki hat geschrieben:Hier ist ein alter Thread (Der code ist aber noch neu :D ):
http://www.purebasic.fr/german/viewtopic.php?t=16835
Du meinst mit "Template" also eine (oder mehrere) Include-Datei(en)?

Gruß, Little John

Verfasst: 07.10.2008 19:24
von Josef Sniatecki
Ja genau: Ich besitze eine ganze Sammlung von meinen Templates (oder
was auch immer). Templates sind also bei mir Include Dateien. Viele
dieser Dateien sind auch miteinander durch "Include"/"XInclude"
verzweigt.

Tschuldigung, dass ich euch mit "Template" verwirrt habe. :)

Doch nun zurück zum Interpreter...