Operno 5.10 (Skriptsprache/Interpreter)

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

Operno 5.10 (Skriptsprache/Interpreter)

Beitrag von Josef Sniatecki »

Hier ist die aktuelle Version 5.10


Hi,

nach langer Arbeit habe ich eine neue Version von Operno entwickelt.
Wie manche von euch warscheinlich schon wissen, ist Operno ein
objektorientierter und dynamischer Interpreter. D.h. Operno ist eine
selbst entwickelte Skriptsprache.

Folgende Ausdrücke sind z.B. in Operno möglich:

Code: Alles auswählen

output 1+1
output 2*5+8 (Punkt vor Strich wird beachtet)
output 2*(5+5)

x = 5
output x+8
output 2x (Kurzform für Multiplikation ist möglich)

Nun die Fatures und Veränderungen von Operno 4:
- Leichte Syntax
- Operno als DLL
- HTML-Generator für Syntax-Hilight
- Operno Graph (nutzt die DLL als Schnittstelle)
- Dokumentation (noch unvollständig)
- Beispiele

Ein großes und mächtiges Feature ist die DLL. Durch diese kann man
den Interpreter in seine eigene Projekte einbinden. Ein Beispiel ist
im Download dabei.

Download

Auf Fragen, Kommentare und Bugs würde ich mich sehr freuen.



Ach ja, und noch was:
Wer es als Erster schafft, eine Funktion in Operno zu programmieren, die
30 Mal "Hello world!" ausgibt, der bekommt ein plus Punkt. :mrgreen:
Ich denke mal, dass die Beispiele reichen, um dies hinzubekommen.



Gruß Josef
Zuletzt geändert von Josef Sniatecki am 01.06.2009 19:37, insgesamt 5-mal geändert.
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
STARGÅTE
Kommando SG1
Beiträge: 7031
Registriert: 01.11.2005 13:34
Wohnort: Glienicke
Kontaktdaten:

Beitrag von STARGÅTE »

Code: Alles auswählen

n=0 ; { out "Hello world!" ; n++ } while n < 30
ist ganz nett das programm aber !

Sobalt man nun n keinen Syntaxfehler drin hat kommt ein IMA und das Programm geht aus, das solltest du verhindern, und eigene Infos und Fehlermendungen ausgeben, sonst macht das kein spaß darin zu schreiben .
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
Benutzeravatar
cxAlex
Beiträge: 2111
Registriert: 26.06.2008 10:42

Beitrag von cxAlex »

Mir gefällt das Programm :allright: .
Weiter so.
Projekte: IO.pbi, vcpu
Pausierte Projekte: Easy Network Manager, µC Emulator
Aufgegebene Projekte: ECluster

Bild

PB 5.1 x64/x86; OS: Win7 x64/Ubuntu 10.x x86
Benutzeravatar
Josef Sniatecki
Beiträge: 657
Registriert: 02.06.2008 21:29
Kontaktdaten:

Beitrag von Josef Sniatecki »

@Stargate

Das war aber schnell :shock: +1
Und sogar noch in der eleganten Form.

EDIT:
Die normale Form wäre diese gewesen:

Code: Alles auswählen

n=0
while n<30:{
  out "Hello world!"
  n++
}
OK, könnte wirklich ein paar Fehlermeldungen einbauen, die IMAs
verhindern. Danke für den Tipp.
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 »

Hier noch was Wichtiges:

Für Operno gibt es noch keine visuelle Schnittstelle (bis auf die Konsole).
Deswegen würde ich mich sehr freuen, wenn sich jemand freiwillig
bereitstellen würde, eine IDE mit mir zu entwickeln, da ich mich nur sehr
wenig mit WinAPI auskenne. Die Arbeit bezüglich der Kommunikation
zwischen der IDE und Operno nehme natürlich ich ab.

Interessenten können sich einfach per E-Mail oder PN melden. Dann kann ich
auch mehr Details erwähnen.

Gruß 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 »

Hi,

ich brauche mal wieder euren Rat bezüglich zum Sprachdesign von
Operno 5:

Ihr wisst ja wahrscheinlich, dass Operno objektorientiert ist und damit
spezielle Methoden für Klassen bereitstellt. Dazu gehört z.B. der
Konstruktor, Destruktor, die Operatoren usw.

Nun geht es mir um die Namenskonvention für Klassenmethoden.
Derweilen bennene ich die Methoden immer nach dem Schema:
Underscore Name Underscore

Bei mir heißt z.B. der Konstruktor "_new_" und der Destruktor "_del_" usw.

Findet ihr das mit den Unterstrichen am Anfang und am Ende der Namen
OK oder lästig. Was würdet ihr vorschlagen? Denn ich selbst habe bis
jetzt nur mit C++ objektorientiert programmiert und ihr wisst ja, dass
dort die Namenskonventionen für Klassenmethoden völlig anders sind.
Andere Arten von Namenskonventionen kenne ich nicht.

Gruß 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
cxAlex
Beiträge: 2111
Registriert: 26.06.2008 10:42

Beitrag von cxAlex »

Ich würde keinen _ am Ende machen, eventuell 2 Undescore am Anfang:

__del, __new, ...
Projekte: IO.pbi, vcpu
Pausierte Projekte: Easy Network Manager, µC Emulator
Aufgegebene Projekte: ECluster

Bild

PB 5.1 x64/x86; OS: Win7 x64/Ubuntu 10.x x86
Benutzeravatar
Josef Sniatecki
Beiträge: 657
Registriert: 02.06.2008 21:29
Kontaktdaten:

Beitrag von Josef Sniatecki »

@cxAlex

Stimmt, lässt sich viel schneller schreiben. Mal sehen, vielleicht gibts auch
noch andere Vorschläge.

thx für die schnelle Antwort.
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ß
Andesdaf
Moderator
Beiträge: 2673
Registriert: 15.06.2008 18:22
Wohnort: Dresden

Beitrag von Andesdaf »

ja, mit zwei Unterstrichen am Anfang feht es wirklich gut zu schreiben.
Allerdings sieht das etwas merkwürdig aus, mehr als einen Unterstrich
hintereinander zu haben.
Win11 x64 | PB 6.20
Benutzeravatar
Josef Sniatecki
Beiträge: 657
Registriert: 02.06.2008 21:29
Kontaktdaten:

Beitrag von Josef Sniatecki »

Simmt, wieso eigentlich zwei Unterstriche.

habe mich ein bisschen mehr über Python und Ruby informiert. Ruby
besitzt auch ne völlig andere Namenskonvention. In Python werden jedoch
zwei Underscores am Anfang und am Ende benutzt. Ich frage mich was sie
dazu bewegt, dies zu tun.

Naja, dann bleibe ich mal bei "_new", "_def" usw.
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