Sponsor-Board.de

Normale Version: [Teaser] Eine neue Programmiersprache
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
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!

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
Wieso das ganze?
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
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.
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
@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.

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?

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.

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.
Seiten: 1 2
Referenz-URLs