Wann ist eine Sprache eine Programmiersprache?



  • Also schwammig finde ich den Begriff nicht. Der Name sagt es doch schon: ich kann damit einen Ablauf steuern, halt ein Skript wie im Drehbuch eines Theaterstücks.

    Übertragen auf die Programmierung kann ich damit ein Programm steuern. Im Gegensatz zu Programmiersprache spreche ich keine Bibliotheken an, um ein Programm zu erstellen. Ich steuere mit einer Scriptsprache ein Programm, z.B. ist VBA eine Scriptsprache, weil ich damit nur Programme wie z.B. Excel steuern kann bzw. es auch nur dafür gedacht ist. Und das geht in Windows sehr einfach mit VBA den Scripting-Host anzusprechen. In C++ und Java muß ich dafür einen heiden Aufwand betreiben. Aber dafür ist C++ und Java auch nicht gedacht.

    Die Bash-Scripts in Unix machen auch das: sie steuern Unix-Programme, selbst wenn es nur das Remove oder Copy Programm ist, um Dateien zu löschen oder zu kopieren.

    Von den ganzen Scriptspachen wie Lua, die in den Spielen für den Ablauf sorgen, will ich erst gar nicht anfangen.

    Das diese Sprachen aber missbraucht werden, ist eine andere Geschichte.

    Java ist keine Scriptsprache, weil ich für gewöhnlich damit keine Programme steuere. Ganz im Gegenteil, das wird ziemlich aufwändig.



  • Dass Java als Scriptsprache bezeichnet worden wäre, hab ich noch nicht gehört. Die Unterscheidung ist aber in der Tat schwammig und m.E. nicht sonderlich produktiv, deshalb werd ich meinen Senf dazu nicht abgeben.



  • Assembler ist keine Programmiersprache sondern eine Zuweisung von Abkürzungen zu den Instruktionen der Maschine. Eine Art Übersetzungstabelle.



  • 314159265358979 schrieb:

    Assembler ist keine Programmiersprache sondern eine Zuweisung von Abkürzungen zu den Instruktionen der Maschine. Eine Art Übersetzungstabelle.

    Soweit ich mich erinnern kann, gibts bei Assembler auch Syntaxfehler.



  • ... kann auch Syntaxfehler enthalten und ist auch keine Programmiersprache...



  • wikipedia schrieb:

    From Wikipedia, the free encyclopedia

    Assembly Language

    An assembly language is a low-level programming language for computers

    Ich sehe auch assembler und javascript als Programmiersprachen an.

    Skriptsprachen wie javascript sind mmn. eher eine spezialisierung von programmiersprachen. Sachen wie shellscripts gehören aber eher nicht dazu.

    HTML ist eben keine Programmiersprache, weil durch html kein programm erzeugt wird, sondern ein dokument.



  • Deutsch... schrieb:

    ... kann auch Syntaxfehler enthalten und ist auch keine Programmiersprache...

    Syntaxfehler setzen aber eine Sprache voraus und Programmieren tut man mit Assembler auch. Ist halt keine höhere Programmiersprache.



  • ... wollte damit nur sagen, dass Syntaxfehler kein Argument für eine Programmiersprache ist. Für eine Sprache allerdings sehr wohl!



  • Was soll den ein Argument für Programmiersprache sein.



  • ... Eine Programmiersprache ist eine Sprache, aus der, in irgendeiner Weise, Maschinencode erzeugt wird, der den Rechner in irgendeinerweise dazu veranlasst zu arbeiten...

    So ist Maschinencode im Grunde genommen ebenfalls eine Programmiersprache!



  • z.B. .. schrieb:

    ...
    So ist Maschinencode im Grunde genommen ebenfalls eine Programmiersprache!

    Jain, du wirst dich wohl kaum hinsetzen und in Maschinencode programmieren. Maschinencode ist Code, der durch die CPU ausgeführt wird. Das dein C++ Programm vorher da hin übersetzt wurde weist jedoch darauf hin, das C++ eine Programmiersprache ist.



  • inflames2k schrieb:

    z.B. .. schrieb:

    ...
    So ist Maschinencode im Grunde genommen ebenfalls eine Programmiersprache!

    Jain, du wirst dich wohl kaum hinsetzen und in Maschinencode programmieren. Maschinencode ist Code, der durch die CPU ausgeführt wird. Das dein C++ Programm vorher da hin übersetzt wurde weist jedoch darauf hin, das C++ eine Programmiersprache ist.

    Wer hat denn behauptet, dass C++ keine Programmiersprache ist.

    Und Maschinencode ist eine Sprache mit der du dem Rechner Befehle gibst, also eine Programmiersprache...



  • z.B. .. schrieb:

    ... Eine Programmiersprache ist eine Sprache, aus der, in irgendeiner Weise, Maschinencode erzeugt wird, der den Rechner in irgendeinerweise dazu veranlasst zu arbeiten...

    So ist Maschinencode im Grunde genommen ebenfalls eine Programmiersprache!

    Ich würde einfach sagen, eine Sprach mit der man programmieren kann. Programmieren beinhaltet Algorithmen so aufschreiben, dass sie der Computer ausführen kann, das schließt dann HTML aus.



  • ... redet denn von HTML????



  • Wenn man... schrieb:

    Wer hat denn behauptet, dass C++ keine Programmiersprache ist.

    Und Maschinencode ist eine Sprache mit der du dem Rechner Befehle gibst, also eine Programmiersprache...

    Keiner, nur wird Maschinencode nicht weiter Programmiersprache wenn man die Definition biegt. Weil was nun einmal alle Programmiersprachen gemeinsam haben ist, dass sie irgendwann in Maschinencode übersetzt werden, auch wenns bei .NET und Java durch eine Runtime passiert. Maschinencode würde ich aber nicht zu einer Programmiersprache erklären.



  • inflames2k schrieb:

    Weil was nun einmal alle Programmiersprachen gemeinsam haben ist, dass sie irgendwann in Maschinencode übersetzt werden

    Zählen dann LOOP und WHILE nicht als Programmiersprachen, weil ich keine konkrete Maschine mit "Maschinencode" dahinterstehen habe?



  • ... praktischen Sinne nicht, da es sich dabei lediglich um abstrakte Konstrukte aus der Theorie handelt, wie z.B. Pseudocode oder Struktogramme



  • Im... schrieb:

    ... praktischen Sinne nicht, da es sich dabei lediglich um abstrakte Konstrukte aus der Theorie handelt, wie z.B. Pseudocode oder Struktogramme

    Und wenn ich einen Compiler für die Sprachen schreibe, werden sie auf einmal Programmiersprachen?

    Note to self: Vielleicht sollte ich nicht mehr so viel mit rhetorischen Fragen arbeiten.



  • Die Wortmenge mag die gleiche sein, aber erst dein Compiler setzt das Theoriekonstrukt (eine *formale* Sprache) in ein praktisches um (eine *Programmier*sprache). Dahinter steht vielleicht das alte formale Konzept, aber eine Programmiersprache ist das (formale Konstrukt) doch deswegen noch lange nicht.



  • Compiler übersetzen keine Sprachen, sondern in einer Sprache geschriebene Texte.

    Edit: Vielleicht habe ich dich da auch falsch verstanden. Meinst du also, dass alle von einem Compiler akzeptierten Texte eine Programmiersprache bilden? Warum muss der Compiler denn dann von jemandem geschrieben worden sein? Nimm einen theoretischen Compiler, für den du das Verhalten spezifizierst, und schon bist du wieder bei formalen Sprachen.


Anmelden zum Antworten