Frage von timmefragt, 83

Wie entstehen eigentlich Programmiersprachen?

Ich habe mir Gedanken gemacht, wie eigentlich Programmiersprachen (JavaScript,C++,...) entstehen. Diese müssen doch auch irgendwie gemacht werden... programmiert werden.

Antwort
von Zuck3r, 51

Im Falle von JavaScript ist die Spezifikation der Sprache innerhalb von einer Woche entstanden. Und das merkt man leider auch :'D

Entstehen tut eine Programmiersprache indem du eine gültige Syntax definierst und im folgenden einen Compiler schreibst, der die Sprache in eine für das System verständliche Sprache umwandelst. Einen Übersetzer also.

Im Fall von Java ist das allerdings etwas spezieller, da hier der Javacode für alle Systeme gleich übersetzt wird, und das Java was du auf deinem Rechner installieren musst letztendlich dafür sorgt dass dieser Code auch auf deinem System lauffähig ist.

Kommentar von timmefragt ,

also übersetzt es diese sachen zu 'einsen und nullen'. wäre es also möglich, eine neue sprache zu programmieren?

Kommentar von Zuck3r ,

Ich hab selber noch keinen compiler geschrieben und kann das ganze auch nur theoretisch. Ich würde vermuten der Compiler setzt den Code in Assembler um. Aber wetten würde ich da auch nicht drauf, da das für mich bis jetzt nicht relevant war :)

Natürlich kann man eine neue Sprache erschaffen, die Frage ist allerdings warum man das tun sollte, denn wie schon richtig erwähnt wurde ist das keine triviale Aufgabe.

Kommentar von Etter ,

Soweit ich weiß wird das Programm entweder direkt in Maschinencode übersetzt oder in einen Zwischencode.

https://de.wikipedia.org/wiki/Compiler

Beispielsweise in Bytecode: http://www.javaworld.com/article/2077233/core-java/bytecode-basics.html

Kommentar von Etter ,

Hier noch ein Artikel zu Maschinensprache: https://de.wikipedia.org/wiki/Maschinensprache

Antwort
von qugart, 39

Grob gesagt ist es so, dass ein Prozessor einen gewissen Befehlssatz hat. Das ist z.B. der Binärcode. Also die Anordnung der Nullen und Einsen.

Dieser Befehlssatz wird gerne auch Maschinensprache genannt.

Programmiersprachen (oder besser gesagt höhere Programmiersprachen) definieren durch Ausdrücke bestimmte Befehle der Maschinensprache in leichter zu merkende Syntax.

Kommentar von timmefragt ,

zurzeit ist das die Antwort, die ich am besten verstehe

Antwort
von SiroOne, 34

Programmiersprachen entwickeln sich in Jahren, also sie sind eigentlich immer in Entwicklung, weil sie müssen sich auch der Technik anpassen oder umgekehrt, zum Beispiel haben sich in den letzten Jahren Objektorientierte Sprachen, wie Java durch gesetzt, weil es einfacher ist mit Objekten zu programmieren.

Antwort
von TheQ86, 21

Wichtig ist eins: Dass am Ende Maschinencode für die verwendete Prozessorarchitektur herauskommt. Dieser Code besteht aus Nullen und Einsen, die von der CPU verarbeitet werden können. Irgendwann hat man ein Programm geschrieben, das einfache Befehle in Maschinencode übersetzt (zB. Assembler). Später hat man dann Sprachen geschrieben, die über die heutigen Sprachkonstrukte (Schleifen, Bedingte Abarbeitung usw.) verfügen und simple Ein/Ausgabeoperationen ausführen konnten (zB. C)

Es kommt also nur darauf an den Quellcode irgendwie in Maschinencode umwandeln zu können. Einige Sprachen, zB. C oder C++ haben mittlerweile sogar einen Stand erreicht, dass man den Kompiler in der jeweiligen Sprache selbst schreiben kann.

Antwort
von Etter, 8

https://de.wikipedia.org/wiki/Theoretische_Informatik

Das Gebiet umfasst so ziemlich dieses Thema.

Antwort
von landregen, 40

Die entstehen nicht, die werde entwickelt.

Lies dazu zum Beispiel hier: http://www.heise.de/developer/artikel/Grundsaetzliches-zur-Entwicklung-von-Progr...

Kommentar von timmefragt ,

und WIE?

Kommentar von timmefragt ,

entschuldigung wegen dem Kommentar, der link wurde nicht gezeigt

Kommentar von landregen ,

Ich habe den Link auch erst ergänzt, nachdem du gefragt hast ;-) Sorry :-)

Kommentar von timmefragt ,

wie denn das?

Kommentar von landregen ,

Man hat nach dem Antworten noch 200 bis 300 Sekunden Zeit, seine Antwort zu verbessern. Ich weiß nicht genau wie lange, irgend etwas Dreistelliges. Die Zeit war noch nicht abgelaufen, als du gefragt hast. Da habe ich die Antwort noch ergänzt...

Kommentar von timmefragt ,

bei mir ging das nicht

Keine passende Antwort gefunden?

Fragen Sie die Community