Autor Beitrag
Moritz M.
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1672



BeitragVerfasst: Mi 27.10.04 20:44 
Sers Leute,

erinnert ihr euch noch an eure Zeit als Programmieranfänger? Euch wurden Fachbegriffe um die Ohren geworden, mit denen ihr so rein gar nichts anfangen konntet? Ich erinnere mich noch sehr gut daran :mrgreen:
Ich hab mir gedacht dass es für einen Programmieranfänger doch um einiges einfacher wäre, mit Befehlen à là
ausblenden Quelltext
1:
sage "Hallo"					

und
ausblenden Quelltext
1:
addiere 10 zu zahlenvariable					

anzufangen. Deswegen hab ich mich in letzer Zeit mal hingesetzt und eine kleine Programmiersprache geschrieben. Sie ist noch sehr buggy, ein paar Vergleich gehen noch nicht, aber die hautpsächlichen Befehle laufen sehr stabil. Sie intepretiert einen Code, übersetzt in in Assemblercode und jagt das ganz durch NASM und ALINK. ( An einem eigenen Assembler arbeite ich zur Zeit in einem anderen Projekt ) ( Ich habe beide Dateien direkt beigelegt, das Copyright liegt natürlich bei den jeweiligen Herstellern ) Es werden voll lauffähige 16-Bit Executables erzeugt.
Die IDE an sich kann noch nicht mehr als Compillieren (F9) und Ausführen (F10), weil diese Bereiche für mich bis jetzt noch unwichtig waren. In den nächsten Versionen werden Sachen wie Speichern, Laden etc. folgen ;)
Ein Beispielprogramm, in das alle bis jetzt lauffähigen Befehle integriert sind, ist direkt drinnen. Eine Sprachreferenz gibt es noch nicht, für erfahrene Programmiere wie euch sollte es kein Problem darstellen sich an den Syntax zu gewöhnen.
Das Programm ist wie gesagt für Programmiereinsteiger gedacht, die sich noch nicht mit den englischen Begriffen rumschlagen wollen, für manchen von euch mag der Syntax komisch sein. :mrgreen:

Kurzanleitung:
1) ZIP-Archiv downloaden ( 582 KB )
2) Extrahieren: Der Ordner, in den ihr extrahiert, sollte nach Möglichkeit keine Sonderzeichen enthalten.
3) stroeng.exe starten
4) Ihr seht nun ein Beispielprogramm, entweder ihr lasst es oder ihr geb ein eigenes ein
5) F9 drücken ( Oder Programm -> Erzeugen ). Programm wird erzeugt und die EXE wird im Verzeichnis von stroeng.exe gespeichert
6) Optional: F10 zum ausführen drücken. Der Vorteil ist dass sich das Fenster nicht direkt nach ausführen schließt ( wie wenn ihr es mit doppelklick öffnet ), sondern am Ende noch auf eine Tastatureingabe wartet

Ich hab den Interpreter heute von TASM auf NASM übersetzt, es kann sein dass noch irgendwo kleine Fehler stecken, die ich beim Übersetzten einfach vergessen habe.

Würde mich über Testberichte freuen!

Gruß, Moritz

P.S.: Wie ich auf den Namen komme? ^^ Keine Ahnung :mrgreen:

Screenshot:
user defined image


Zuletzt bearbeitet von Moritz M. am Do 28.10.04 16:13, insgesamt 1-mal bearbeitet
Kroni
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 720

Win 98, Win ME, Win2k, Win XP
D3 Pro
BeitragVerfasst: Mi 27.10.04 20:58 
Wenn man dann die genaue Formulierung drauf hat, wie du was nennst, ist das Projekt doch recht super....find ich.
Also quasi das Basic in Deutsch *g*
Aber soweit ich weiß, gibt es sowas ähnliches schon, dass man mit Wenn dann forumlierungen Arbeitet. Aber ich finde es super, dass du so ein Projekt machst!
Finde ich wirklcih Klasse =)
Kroni
Moritz M. Threadstarter
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1672



BeitragVerfasst: Mi 27.10.04 21:27 
Danke :)
Ja, es gibt massig deutsche Programmiersprachen, aber keine ist so wie ströng ;)

Hab ne neue Version oben in der ein Fehler bei der Division korrigiert wurde.
matze
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 4613
Erhaltene Danke: 24

XP home, prof
Delphi 2009 Prof,
BeitragVerfasst: Do 28.10.04 14:29 
die mindest höhe von dem fenster ist ziemlich ätzend !

_________________
In the beginning was the word.
And the word was content-type: text/plain.
Moritz M. Threadstarter
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1672



BeitragVerfasst: Do 28.10.04 15:13 
Das ist leider noch ein kleiner Bug. Du musst zuerst den oberen Teil kleiner machen, und dann kannst du das Fenster klein machen.
Karlson
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 2088



BeitragVerfasst: Do 28.10.04 15:57 
Auf en ersten Blick: Super Programm. Ich werds mir heute Abend mal genauer anschauen, und dann meine Erfahrungen zum Code posten.
Moritz M. Threadstarter
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1672



BeitragVerfasst: Do 28.10.04 18:55 
So, neue Version ist oben:
www.gaehnen.net/stroeng.zip ( 604 KB )

Der Editor kann nun laden, Speichern etc. Die Beispiele können über "Datei" -> "Beispiel laden" geladen werden. Und das Highlighting ist verbessert. :)

Würde mich über Tests freuen!

Gruß
blackbirdXXX

ontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic starofftopic starofftopic star
Beiträge: 1077
Erhaltene Danke: 1

Ubuntu Dapper

BeitragVerfasst: Do 28.10.04 22:02 
Cool! SIcher besser als Ook! Ook. Ook? :D

//Edit: Vergleiche: www.99-bottles-of-beer.net/o.html#Ook

//Edit2: Wie geht das mit wenn?

//Edit3: Warum geht das nicht?
ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
programmname: <99bottles>

variablen:
  flaschen 99
ende

wiederhole flaschen mal:
  sage flaschen
  sage " bottles of beer on the wall"
  mache neue zeile
  sage flaschen
  sage " bottles of beer"
  mache neue zeile
  sage "Take one down, pass it around"
  mache neue zeile
  subtrahiere 1 von flaschen
  wenn flaschen genauso ist wie 0 dann:
    sage "No"
  ansonsten
    sage flaschen
  ende
  sage " bottles of beer on the wall"
  mache neue zeile
  mache neue zeile
ende
  
ende

_________________
Klein, schwarz und ärgert Techniker? Jumper!
Kroni
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 720

Win 98, Win ME, Win2k, Win XP
D3 Pro
BeitragVerfasst: Fr 29.10.04 01:06 
Also bei mir funktioniert das, was zeigt der denn bei dir für ne Fehlermeldung?
blackbirdXXX

ontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic starofftopic starofftopic star
Beiträge: 1077
Erhaltene Danke: 1

Ubuntu Dapper

BeitragVerfasst: Fr 29.10.04 04:43 
Er zählt nicht so wie er soll.
Ich habe es jetzt so gelöst:
ausblenden volle Höhe Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
programmname: <99bottles>

variablen:
 flaschen 99
ende

Position oben:
 wenn flaschen genauso ist wie 0 dann:
   sage "1 bottle of beer on the wall"
   mache neue zeile
   sage "1 bottle of beer"
   mache neue zeile
   sage "Take on down, pass it around"
   mache neue zeile
   sage "No bottles of beer on the wall"
 ansonsten
   sage flaschen
   sage " bottles of beer on the wall"
   mache neue zeile
   sage flaschen
   sage " bottles of beer"
   mache neue zeile
   sage "Take one down, pass it around"
   mache neue zeile
   subtrahiere 1 von flaschen
   wenn flaschen genauso ist wie 0 dann:
     sage "No"
   ansonsten
     sage flaschen
   ende
   sage " bottles of beer on the wall"
   mache neue zeile
   mache neue zeile
   gehe oben
 ende
ende

ende

_________________
Klein, schwarz und ärgert Techniker? Jumper!
Karlson
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 2088



BeitragVerfasst: Fr 29.10.04 20:23 
So,

Hab mir jetzt auch noch den Rest angeschaut.
Ist echt lustig, es weckt mal wieder Erinnerungen an die Zeit in der oop noch unerschwinglich war :)

Für Anfänger halte ich die Sprache aber ehrlich gesagt nicht für geeignet. Nicht weil sie zu schwer ist oder so, sondern vielmehr weil Anfänger direkt den Syntax lernen sollten. Also auch direkt die wichtigen Wörter. Später sitzen sie dann vor einer If-Abfrage und fragen sich was das jetzt sein soll.

Trotzdem so ganz für den Anfang ganz gut!
Habe das Programm zwei Freunde die gerade mit dem PRogrammieren anfangen gegeben - die sind vollauf begeistert :)
Moritz M. Threadstarter
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1672



BeitragVerfasst: Fr 29.10.04 21:25 
Servus,

@blackbird_Edit2: Wegen wenn: Kommt gleich, siehe unten im Post
@blackbird_Edit3: Was genau geht daran nicht?
@Karlson: Danke ^^ Meiner Meinung nach ist das Verständnis der Abläufe wichtiger als der Syntax. Einen Syntax kann man "leicht" umlernen, wenn man es einmal versteht. Aber wenn man es nicht vesteht?

Ich hab heute mal eine Referenz zu den bisher unterstützen Befehlen geschrieben. Sie leigt dem Download bei.

Download: www.gaehnen.net/stroeng.zip (595 KB)

Gruß, Moritz

P.S.: Wenn unterstützt noch nicht alle Vergleichsarten. Das kommt aber im Laufe der Zeit noch :)
Edit: Und mit STRG+G kann man jetzt ein Grundgerüst einfügen. ^^
adler
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 511

Windows XP
Delphi 05 Pers
BeitragVerfasst: Fr 29.10.04 22:33 
Hi!

Habe mir jetzt net alle Beiträge durchgelesen (Schaut mal auf die Uhr) ...
Aber an sich ist die Idee zumindest cool.
Doch ist es nicht einfacher ein "+" anstatt "addiere" hinzuschreiben?
Und kann man jetzt "addiere" als Variable deklarieren? ;)

_________________
Wo's nix zu gucken gibt, gibts vielleicht was zu hören.
Moritz M. Threadstarter
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1672



BeitragVerfasst: So 07.11.04 09:14 
Ein + wäre ja langweilig :mrgreen:

Nein, sicher darfst du eine addiere-Variable deklarieren, da es ja nur Befehls-Tokens gibt, und da ist der Syntax eindeutig ^^ Wieso also nicht? :)
adler
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 511

Windows XP
Delphi 05 Pers
BeitragVerfasst: So 07.11.04 09:29 
Aber mal so ne Frage:
Kann man einfach den Code in Assambler übersetzen und dann als exe speichern?
(wenn man assambler kann ^^)

_________________
Wo's nix zu gucken gibt, gibts vielleicht was zu hören.
Moritz M. Threadstarter
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1672



BeitragVerfasst: So 07.11.04 09:52 
Ja kann man, du musst halt beachten das jeder Codeteil alle Register bevor er sie berarbeitet sichern muss, sonst könnten da sehr komische Sachen rauskommen. Das ganze jagt man dann durch einen Assembler ( In unserem Fall NASM ), der die Textbefehle in Opcodes übersetzt, die Speicherstellen eisnetzte etc etc pp. Dieser Zwischencode wird dann durch einen Linker gejagt, der evtl. mehrere Codeteile zusammensetzt. Dann haben wir unsere Exe.

Gruß

P.S.: Wikipedia sollte dazu auch einiges ausspucken.
Moritz M. Threadstarter
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1672



BeitragVerfasst: So 07.11.04 14:39 
Sodala

Ich hab eine neue Version oben. Neuerungen:

  • Automatisches Backup aller Codes
  • Im Backup liegt auch der Assemblercode. Er ist jetzt einsehbar ( Der zuständige Ströng - Befehl steht als Kommentar dabei )
  • Grundgerüst ist konfortabeler geworden
  • Im Codeeditor sind jetzt Bookmarks möglich. Sie können mit STRG+SHIFT ( Das direkt drüber ^^ ) + ZAHL gesetzt und mit STRG + ZAHL aufgerufen werden.
  • Ein dicker "-Fehler ist draußen
  • NASM - Fehler werden erkannt, aber noch nicht behandelt
  • Einige kleine Änderungen an der IDE
  • Ein paar Änderungen im Compiler
  • Im About-Fenster steht jetzt das Build-Datum. So kann die ströng-verion besser idetifiziert werden ;) ( Für 0.2 ist sie noch nicht reif )
  • Jetzt auch mit setup


Download:
www.gaehnen.net/stroeng.exe ( Setup, 728 KB, Empfohlen )
www.gaehnen.net/stroeng.zip ( ZIP-Datei, 598 KB )

Gruß
Moritz M. Threadstarter
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1672



BeitragVerfasst: Mo 08.11.04 21:24 
Servus Leute,

es gibt eine neue Version. Neuerungen:

  • Es werden jetzt auch Großbuchstaben für Variablen akzeptiert. Allerdings ist TEST <> test
  • Es gibt jetzt Vergleiche mit
    ausblenden Quelltext
    1:
    wenn [1] größer als [2] ist dann:					

    ( größer kann auch groesser sein ) und
    ausblenden Quelltext
    1:
    wenn [1] kleiner als [2] ist dann:					



Download:
www.gaehnen.net/stroeng.exe ( Setup, 728 KB, Empfohlen )
www.gaehnen.net/stroeng.zip ( ZIP-Datei, 598 KB )

Gruß
GTA-Place
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
EE-Regisseur
Beiträge: 5248
Erhaltene Danke: 2

WIN XP, IE 7, FF 2.0
Delphi 7, Lazarus
BeitragVerfasst: Sa 13.11.04 18:32 
Kommt nach dem Ausführen immer:

"Befehl oder Dateiname nichtgefunden"
Moritz M. Threadstarter
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1672



BeitragVerfasst: So 14.11.04 14:24 
Nach welchem Ausführen? F9 oder F10?