Sponsor-Board.de
[Teaser] Eine neue Programmiersprache

+- Sponsor-Board.de (https://www.sponsor-board.de)
+-- Forum: Community (/forumdisplay.php?fid=56)
+--- Forum: Plauderecke (/forumdisplay.php?fid=39)
+--- Thema: [Teaser] Eine neue Programmiersprache (/showthread.php?tid=49914)


[Teaser] Eine neue Programmiersprache - Dream-Code - 31.07.2014 00:21

Hey ho,

ich wollte nur mal schnell ein bisschen spoilern und teasern, was bald für euch alle nutzbar sein wird, um die Programmierung zu lernen (und vielleicht auch mehr damit zu arbeiten).

Es geht um eine auf Java basierende Programmiersprache, die ich selbst entwickle und auch einen eigenen Compiler schreibe. Eine ordentliche Portion geht schon, ich werde aber noch ca. 4 Wochen Feinschliff machen, bevor die erste Version nutzbar sein wird.

Trotzdem hier mal ein Codebeispiel (welches schon einwandfrei kompiliert wird und auch funktioniert):

Code:
// Allocate my very own variables
allocate int with name myVar1;
allocate int with name myVar2;

// Assign some fancy values to the variables
assign 42 to myVar1;
assign 98 to myVar2;

// Output the addition of myVar1 and myVar2
printline myVar1 + myVar2;


Natürlich ist das noch lange nicht alles, was die Sprache schon kann. Trotzdem soll das hier keine richtige Vorstellung sondern nur ein Teaser sein.
Eure Meinung würde mich aber trotzdem interessieren. Was haltet ihr von dieser Sprache, die - wie unschwer zu erkennen ist - stark an das normale Englisch angelehnt ist?

Danke für eure Aufmerksamkeit!


RE: [Teaser] Eine neue Programmiersprache - Linux-Scout.de - 31.07.2014 00:34

Hey,
also das kleine Codebeispiel müsste eigentlich jeder Programmierleihe verstehen. Es ist ziemlich einfach und verständlich. Mal schauen, was aus deiner Sprache wird Smile


RE: [Teaser] Eine neue Programmiersprache - Aaron - 31.07.2014 00:45

Wieso das ganze?


RE: [Teaser] Eine neue Programmiersprache - Dream-Code - 31.07.2014 01:32

Mehr oder weniger ein Abfallprodukt, da ich schon seit einiger Zeit immer ein Framework baue, wenn ich etwas vermutlich öfter verwende. Diesmal ist es halt ne Sprache geworden. Aber Feedback war dein Beitrag nicht Tongue


RE: [Teaser] Eine neue Programmiersprache - Scharock - 31.07.2014 06:12

Normal ist eine Programmiersprache einfach und übersichtlich gehalten.
Ein Entwickler weiß ja, dass es egal ist an welche Programmiersprache man ihn setzt.
Man muss nur die Syntax kennen, im Kern sind Programmiersprachen gleich.

Wichtig bei einer Programmiersprache ist auch die Performance.
Ich weiß natürlich nicht wie der compiler funktioniert.
Aber ich gehe davon aus, dass hier von X nach Java übersetzt wird?
Also eine Programmiersprache die in Java übersetzt und dann kompiliert wird.

Sehe da keinen Sinn drinn.
Ein Framework ist wiederum etwas anderes und könnte Interessant und hilfreich werden.
Aber in der heutigen Zeit muss das Niveau ziemlich hoch sein.


RE: [Teaser] Eine neue Programmiersprache - Patrick - 31.07.2014 07:44

In der heutigen Zeit ist nicht mehr die Frage "Wie effizient ist meine Software?" sondern "Wie schnell bin ich in der Lage darin zu entwickeln und zu erweitern?".
Die heutigen Rechner haben nicht mehr Mühe mit Java. Das war mal ein Thema aber eigentlich ist der Unterschied für den Anwender nicht erkennbar. Natürlich gibt es rein technisch performantere Sprachen aber das spielt keine Rolle.

Da hast Du dir aber echt was vorgenommen. Ich finde die Idee cool und selber habe ich auf so eine Sprache gewartet Biggrin Es macht den Code sicher leserlicher. Damit das ganze aber auch Zukunft hat, wirst du das gesamte Java umschreiben müssen um auch alle Funktionen abfangen zu können ^^
Ist viel Arbeit, aber hey, ich wünsche Dir viel Erfolg und werde das Geschehen gerne beobachten :-)

Gruss Patrick


RE: [Teaser] Eine neue Programmiersprache - Dream-Code - 31.07.2014 08:03

@Scharock: nein, es wird nicht in Java über setzt sondern direkt in JVM Bytecode kompiliert. Daher besteht kein Unterschied zu normalen Javaprogrammen, da mein Compiler genau das tut, was auch der normale Java Compiler tut. Nur mit anderem Quelltext. Wenn es nachher niemand nutzt würde ich mich vielleicht ein bisschen ärgern aber schlimm wäre es auch nicht, da es in erster Linie für mich bzw. ein paar Leute aus meinem Umfeld ist. Wollte es der Menschheit aber nicht vorenthalten, da ich natürlich wie jeder Programmierer der Meinung bin, dass ich die Welt verbessern kann Tongue

Da es hauptsächlich auch eine Einsteigersprache wird, werden natürlich nicht alle Java Funktionen nutzbar sein. Dafür habe ich mir aber auch ein Konzept überlegt, was - ein bisschen wie bei C++ - in einem gekennzeichneten Block normalen Javacode zulässt.

Zur Performance: man glaubt es kaum aber Java ist oft sogar performanter als andere Sprachen, da Java in einer VM läuft, die den Code sehr krass optimiert und dergleichen. Ein bisschen mehr RAM braucht man natürlich aber wie du, Patrick, schon gesagt hast: das verkraften heutige Rechner.


RE: [Teaser] Eine neue Programmiersprache - Scharock - 31.07.2014 08:19

Dream-Code schrieb:
Zur Performance: man glaubt es kaum aber Java ist oft sogar performanter als andere Sprachen, da Java in einer VM läuft, die den Code sehr krass optimiert und dergleichen. Ein bisschen mehr RAM braucht man natürlich aber wie du, Patrick, schon gesagt hast: das verkraften heutige Rechner.

Das kommt natürlich immer auf den Anwender an.
Ein normaler Entwickler der ein Projekt umsetzt wird damit auskommen.

Als vergleich wird eine große Firma dicke Server haben, dafür aber evt. hoch komplexe Anforderungen an die Software.
Auch wenn es sich eine Firma leisten kann einen enorm dicken Server zu kaufen, wollen diese dennoch möglichst viel für wenig Auslastung.

Dabei ist natürlich auch wichtig, dass der Entwickler weiß was er tut um unnötige Berechnungen zu verhindern und auf Code im Speicher zurück greift, anstatt ihn neue zu berechnen.


Also so weit ich dich verstanden habe, ist es eine Programmiersprache die (wie Java) eine JRE benötigt?
Sprich es muss Java installiert sein und bietet so eine Platformunabhängigkeit?
Dafür wird es wohl nur unter Windows laufen und nicht auf Mobilen Endgeräten?

Ganz wichtiger Punkt!
OOP?


RE: [Teaser] Eine neue Programmiersprache - Patrick - 31.07.2014 08:44

Scharock schrieb:
[quote=Dream-Code]
Dafür wird es wohl nur unter Windows laufen und nicht auf Mobilen Endgeräten?

Ganz wichtiger Punkt!
OOP?


Stimmt nicht, Java ist Plattform unabhängig und sogar Android baut auf einer Art JRE auf. Du kannst auch Webanwendungen schreiben und per Tomcat laufen lassen.
Java hat in der Hinsicht doch einige Vorteile, weil es recht unkompliziert ist diese auf mehreren Plattformen lauffähig zu machen.


RE: [Teaser] Eine neue Programmiersprache - Dream-Code - 31.07.2014 09:06

Also theoretisch kannst das das erzeugte Programm auf deiner Kaffeemaschine laufen lassen wenn du da ne JRE rauf bekommst Smile

OOP wird erst einmal hinten angestellt, da Anfänger noch nicht sofort damit bombardiert werden sollen. Wird aber möglich sein, ist nur kein Zwang wie bei Java.
Android Geräte werden die Programme eher nicht ausführen können, da die eine andere VM nutzen, deren Instruktionsset anders ist.


RE: [Teaser] Eine neue Programmiersprache - Scharock - 31.07.2014 09:37

Patrick schrieb:

Scharock schrieb:
Dafür wird es wohl nur unter Windows laufen und nicht auf Mobilen Endgeräten?

Ganz wichtiger Punkt!
OOP?


Stimmt nicht, Java ist Plattform unabhängig und sogar Android baut auf einer Art JRE auf. Du kannst auch Webanwendungen schreiben und per Tomcat laufen lassen.
Java hat in der Hinsicht doch einige Vorteile, weil es recht unkompliziert ist diese auf mehreren Plattformen lauffähig zu machen.

Bitte entschuldige. Da habe ich mich im Satzbau vertan.
Ich hatte etwas anderes geschrieben und editiert und dadurch entstand dieser merkwürdige Satz.
Wie ich ja geschrieben habe:

Scharock schrieb:
Sprich es muss Java installiert sein und bietet so eine Platformunabhängigkeit?

Natürlich ist mir der große Vorteil von Java, die Platzformunabhängigkeit durchaus bewusst.

Der Satzbau ist hier falsch.

DreamCode schrieb:
nein, es wird nicht in Java über setzt sondern direkt in JVM Bytecode kompiliert.

Damit habe ich gemeint, ob es eine JRE benötigt oder nicht.
Wenn nicht, würde es ja nur unter Windows laufen.

Da es aber eine JRE ist es natürlich klar, dass es Java sehr ähnelt Smile


RE: [Teaser] Eine neue Programmiersprache - Dream-Code - 31.07.2014 10:49

Ja, also um nochmal alle Fragen klar zu machen:

- es wird eine JRE benötigt
- Android wird NICHT unterstützt
- es wird geringerer Sprachumfang sein, da für Einsteiger
- es wird NICHT als Zwischenschritt in normales Java übersetzt sonder DIREK vom SJP-Compiler (selbstgeschrieben) in JVM Bytecode kompiliert und ist damit mindestens so performant wie normales Java - wenn nicht sogar schneller.

Ich hoffe es ist nun alles klar und ich freue mich auf weiteres Feedback Smile


RE: [Teaser] Eine neue Programmiersprache - alcazar - 31.07.2014 14:30

Nette Idee, wenn sicher auch einiges Arbeit wie Patrick sagte.
Als nächste "Demo" Deines Programmes kannste ja ma das beliebte "Hello-World" ausgeben lassen Tongue

<-- als noch EDV gelernt hat (so 1995-1997), haben wir auch ma einen simplen Compiler erstellt - mit Prolog...


RE: [Teaser] Eine neue Programmiersprache - Dennis - 31.07.2014 18:39

Wenn eigene Programmiersprache, dann von Grund auf eine neue und nicht auf Basis einer bestehenden.
Mit dem was du bisher vorgestellt hast, zeigst du eigtl. nur, dass man Java mit einigen syntaktischen Dingen "schmücken" kann, so wirkliche Neuerungen bringst du damit aber bisher nicht rein.


RE: [Teaser] Eine neue Programmiersprache - DerSniper - 31.07.2014 19:26

Ich finde die Idee auf der einen Seite gut, allerdings sehe ich ein Problem:

Du musst ja auch trotz dem man die Sprache recht einfach lesen kann, genau die Syntax etc. einhalten. Somit versteht der Anfänger zwar, was darin steht, allerdings ist das lernen dieser Sprache (so dass man nicht jede Sekunde auf einen Merkzettel gucken muss) meiner Meinung nach schwerer als Java an sich.

Sinn der Programmiersprachen ist es halt sie für Maschinen "lesbar" zu machen. Da ist jedes Wort welches nicht zum Inhalt beiträgt unnütz. Zumal eine Maschine keine Ironie oder ähnliches erkennt^^

Somit sehe ich das ganze als nicht wirklich sinnvoll an. Was aber gut wäre, wenn du eine Art "Übersetzer" bauen würdest. Also, dass die Befehle von Java in eine Menschliche Sprache übersetzt werden kann. Und somit die nicht Erfahrenen auch den Inhalt leichter verstehen können.

Aber an sich wie gesagt gar nicht mal so schlecht. Man müsste es einfach mal ausprobieren.


RE: [Teaser] Eine neue Programmiersprache - GamesRun - 31.07.2014 19:27

Auf jeden Fall sieht das nach einem anehmbaren Projekt für Einsteiger aus. Das Problem mit Einsteigerprogrammiersprachen ist nur, dass...
- es hunderte gibt und deine möglicherweise keine Beachtung findet
- man im Vergleich zu den "großen Progammiresprachen" oft eingeschränkt ist und wenig realisisren kann
Trotzdem bin ich gespannt und werde sie mir mal angucken, wenn sie fertig ist!


RE: [Teaser] Eine neue Programmiersprache - Dream-Code - 02.08.2014 16:55

Dennis schrieb:
Wenn eigene Programmiersprache, dann von Grund auf eine neue und nicht auf Basis einer bestehenden.
Mit dem was du bisher vorgestellt hast, zeigst du eigtl. nur, dass man Java mit einigen syntaktischen Dingen "schmücken" kann, so wirkliche Neuerungen bringst du damit aber bisher nicht rein.


C++ ist auch eine Programmiersprache auf Basis einer anderen. Scala ist auch eine Programmiersprache, die komplett auf der Java VM basiert und läuft, trotzdem ist sie eigenständig. Also deine Argumentation ist nicht ganz nachvollziehbar. Und einige Neuerungen gibt es auch, keine Angst Wink

Für die Leute, die teilweise Features vermissen, habe ich gestern Inline-Java implementiert. Also ein bisschen so wie mit C und Assembler. Folgendes Konstrukt funktioniert einwandfrei und wird optimiert und mitkompiliert:

Code:
allocate int with name var;

<java>
Date date = new java.util.Date();
try {
    Thread.sleep(2000);
}
catch (Exception ex) {
    ex.printStackTrace();
}
Date date2 = new java.util.Date();
</java>
assign j.date.before(j.date2) to var;
printline var;


Ausgabe hier wäre: "true", da date vor date2 angelegt wurde. Man kann also von meiner Sprache dann auch auf die Inline-Java Variablen zugreifen. Das finde ich btw (Eigenlob stinkt, ich weiß) ein ziemlich cooles Feature und es war nicht einfach zu implementieren, ich bin also ein wenig stolz darauf Smile


RE: [Teaser] Eine neue Programmiersprache - alcazar - 02.08.2014 17:11

Nett, Assembler haben wir auch ma gehabt.
Falls es klappt (oder auch nicht), kannste ja ma versuchen das ganze Projekt in Ook!, Chef oder Brainfuck zu schreiben Biggrin


RE: [Teaser] Eine neue Programmiersprache - Dream-Code - 02.08.2014 19:30

Ich weiß zwar nicht, was du von mir willst und man könnte im ersten Moment denken, du hast gekifft oder zu viel getrunken aber (da ich gerade zu faul bin Google zu fragen) vielleicht erklärst du mir ja nochmal was du damit meinst Biggrin


RE: [Teaser] Eine neue Programmiersprache - Stricted - 02.08.2014 19:33

[Link: Registrierung erforderlich]

das sind Esoterische_ Programmiersprachen die er genannt hat....