Operno-Interpreter 2.1.1

Anwendungen, Tools, Userlibs und anderes nützliches.
Benutzeravatar
Josef Sniatecki
Beiträge: 657
Registriert: 02.06.2008 21:29
Kontaktdaten:

Beitrag von Josef Sniatecki »

Habe meine Entscheidung getroffen. Ich lasse es bei "5*(-(5+5))".
Sagt jetzt nicht, dass ich zu faul bin. :D
PB 4.61 | Windows Vista - 32Bit
Homepage

"Wahrlich es ist nicht das Wissen, sondern das Lernen, nicht das Besitzen sondern das Erwerben, nicht das Dasein, sondern das Hinkommen, was den grössten Genuss gewährt." - Carl Friedrich Gauß
Little John

Beitrag 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
Benutzeravatar
Josef Sniatecki
Beiträge: 657
Registriert: 02.06.2008 21:29
Kontaktdaten:

Beitrag 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
PB 4.61 | Windows Vista - 32Bit
Homepage

"Wahrlich es ist nicht das Wissen, sondern das Lernen, nicht das Besitzen sondern das Erwerben, nicht das Dasein, sondern das Hinkommen, was den grössten Genuss gewährt." - Carl Friedrich Gauß
Benutzeravatar
Josef Sniatecki
Beiträge: 657
Registriert: 02.06.2008 21:29
Kontaktdaten:

Beitrag 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
PB 4.61 | Windows Vista - 32Bit
Homepage

"Wahrlich es ist nicht das Wissen, sondern das Lernen, nicht das Besitzen sondern das Erwerben, nicht das Dasein, sondern das Hinkommen, was den grössten Genuss gewährt." - Carl Friedrich Gauß
Benutzeravatar
kswb73
Beiträge: 319
Registriert: 04.02.2008 16:51
Kontaktdaten:

Beitrag 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?
Windows XP: PB 4.31, PB 4.4, PB 4.51
Open Suse 11.2: PB 4.4
Benutzeravatar
Josef Sniatecki
Beiträge: 657
Registriert: 02.06.2008 21:29
Kontaktdaten:

Beitrag 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.
PB 4.61 | Windows Vista - 32Bit
Homepage

"Wahrlich es ist nicht das Wissen, sondern das Lernen, nicht das Besitzen sondern das Erwerben, nicht das Dasein, sondern das Hinkommen, was den grössten Genuss gewährt." - Carl Friedrich Gauß
Little John

Beitrag 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
Benutzeravatar
Josef Sniatecki
Beiträge: 657
Registriert: 02.06.2008 21:29
Kontaktdaten:

Beitrag 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
PB 4.61 | Windows Vista - 32Bit
Homepage

"Wahrlich es ist nicht das Wissen, sondern das Lernen, nicht das Besitzen sondern das Erwerben, nicht das Dasein, sondern das Hinkommen, was den grössten Genuss gewährt." - Carl Friedrich Gauß
Little John

Beitrag 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
Benutzeravatar
Josef Sniatecki
Beiträge: 657
Registriert: 02.06.2008 21:29
Kontaktdaten:

Beitrag 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...
PB 4.61 | Windows Vista - 32Bit
Homepage

"Wahrlich es ist nicht das Wissen, sondern das Lernen, nicht das Besitzen sondern das Erwerben, nicht das Dasein, sondern das Hinkommen, was den grössten Genuss gewährt." - Carl Friedrich Gauß
Antworten