Welche Programmiersprachen sind genormt?
-
Hallo,
mich würde mal interessieren welche Programmiersprachen denn so genormt sind alla ISO etc..
-
C++ (ISO)
C (ISO)
C# (ECMA)
JavaScript (ECMA)
-
Danke für die Antwort, jetzt bin ich etwas baff. Die anderen Sprachen sind alle in der Grauzone und es kann implementiert werden wie es einem lustig erscheint???
-
ANSI Common Lisp
-
funcoder schrieb:
Danke für die Antwort, jetzt bin ich etwas baff. Die anderen Sprachen sind alle in der Grauzone und es kann implementiert werden wie es einem lustig erscheint???
Wenn ich jetzt ja sage, glaubst du's dann?
-
alla ISO
Was heisst den das? Normalerweise sind (fast) alle genormt. Perl aber nicht! Scheme ist z.B. ISO, aber nur R4RS. Es existieren aber schon weitere Standards. Sie sind trotzdem genormt, nur wurde kein teures Paper irgendwo hinterlegt.
Die anderen Sprachen sind alle in der Grauzone
Was erwartest du, dass wir alle Sprachen aufzaehlen? google doch selber ...
-
http://en.wikipedia.org/wiki/SC22
* COBOL
* Ada
* Fortran
* Pascal (programming language)
* C
* C++
* C#
* ECMAScriptedit: Und natürlich noch ein paar Seitenbeschreibungssprachen wie HTML, wenn du das als Sprache zählst.
Da die Frage unvermeidlich kommen wird: Java nicht. Die Sprache ist Privatvergnügen von Sun/Oracle.
-
funcoder schrieb:
Danke für die Antwort, jetzt bin ich etwas baff. Die anderen Sprachen sind alle in der Grauzone und es kann implementiert werden wie es einem lustig erscheint???
Wieso willst du jede Sprache normen? Willst du auch die ganze Welt normen? XD
ISO Brainfuck
-
Zeus schrieb:
Wieso willst du jede Sprache normen?
Es ist wichtig, dass jede Sprache auf eine Norm Europalette passt.
-
funcoder schrieb:
Danke für die Antwort, jetzt bin ich etwas baff. Die anderen Sprachen sind alle in der Grauzone und es kann implementiert werden wie es einem lustig erscheint???
Damit Du unter einem Namen nicht alles anbieten kannst was Du willst, brauchst Du keine ISO-Norm, sondern jemanden, dem der Name gehört und darauf aufpasst.
-
Ja ich finde es schon schön wenn so etwas wichtiges wie eine Programmiersprache genormt ist genauso wie Stecker, Verbindungen etc. Überall wo es auf Zuverlässigkeit/Genauigkeit ankommt ist eine Norm für mich wichtig.
Manche von euch fänden es anscheinend toll wenn z.B. die Elektrik im Haus verlegt wird wie es einem passt. Mir ist sowas nicht egal und ich bin froh es Normen gibt und da gibt es tausende von Beispielen wo eine Norm in der Industrie und Handwerk wichtig ist.
Meiner Meinung sind alle die gegen Normen sind Fuscher, ist nun mal meine Meinung.
Ja und zu Google doch selber und blablablub sage ich besser nix.
Danke an alle die ne ernsthafte Antwort gegeben haben.
@Gregor: Jemand der auf den Namen aufpasst, also privatisiert. Tut mir leid, nein danke!!!
-
Nur aendert sich Elektrik im Haus nicht mehr bzw. ist schwer zu aendern, waehrend Sprache sich entwickelt. Dein Vergleich ist an den Haaren herbeigezogen.
Danke an alle die ne ernsthafte Antwort gegeben haben.
Das meinte ich ernst.
Sind denn alle Programmierer, die keine genormte Programmiersprache benutzen, Fuscher?
-
Wieso ist der Vergleich an den Haaren herbeigezogen, nur weil Dynamik bei der Elektrik niedriger ist? Deine Aussage ist unlogisch, da es ja wohl einige Sprachen auch schaffen genormt zu werden, so wie z.B. C++ auch wenn sie sich stetig ändern.
Dynamik != Normierung ist also schwachfug
Und sicherlich sind Programmierung die die Wahl haben mit einer normierten Sprache zu arbeiten mehr des Fuschs zu betiteln als jenes die dies nicht tun. Wenn es für das Anwendungsgebiet diese Wahl nicht gibt gilt dieser Vergleich logischerweise nicht.
Tut mir leid ich habe in der Industrie gelernt und hassen nun einmal Leute die sich nicht an Normen halten weil sie allen das Leben schwerer machen als nötig.
Beim Programmieren ist es ja schon mal schön das es in einigen Sprache Ambitionen gibt den Sumpf an Technologie zu standardisieren. Würde man andere technische Berufe so ausüben wie es die meisten Programmierer tun dann wäre das dort lebensgefährlich.
-
Huch? Fuscher?? Die Semantik einer Programmiersprache muss doch nur spezifiziert sein. Das muss nicht einmal in einer zusammenhängenden Doku sein, sondern darf ruhig über viele Paper verteilt sein.
Ansonsten kann der Name der Programmiersprache auch markenrechtlich geschützt sein. Das ist nichts Besonderes und bei deiner Nachimplementierung, die du dann "XYZ Implementation" nennst, kannst du Probleme bekommen. Genau so bekommst du Probleme, wenn du ein OS "Windows Remake" nennst oder deine Pommesbude "McFonalds".
Du hast natürlich Recht, dass Normierungen zum Teil von sehr hohem Nutzen sind - auch im IT-Bereich. Aber, wieso nun die Millionen Programmiersprache, inklusiver meine, die ich entwickel, eine ISO oder ECMA Norm bekommen sollte, ist mir vollkommen fraglich. Das Wichtige daran ist, dass die Semantik genau angegeben ist. Und ich kann doch die Nutzer meiner Sprache nicht als "Fuscher" bezeichnen.
Auch Leute, die sich nicht an Standards halten - wie z.B. Youtube, die Flashvideos anzeigen - kann man auch nicht als Fuscher bezeichnen. Auch Microsoft nicht, die mit ihrem IE öfters mal etwas anderes machen als im Standard festgeschrieben. Die Macher hinter dem GNU C++ Compiler auch nicht, wenn sie Erweiterungen in die Sprache einbauen. Das ist doch alles okay. Manchmal nervig, aber deine Einheitsbreilösung, die du fordest, finde ich absurd.
-
funcoder schrieb:
Fuscher
Die deutsche Rechtschreibung ist auch genormt, Pfuscher.
-
funcoder schrieb:
@Gregor: Jemand der auf den Namen aufpasst, also privatisiert. Tut mir leid, nein danke!!!
Naja, aber so ist das eben. Dadurch, dass eine Sprache bei einer großen Standardisierungsorganisation als Norm vorliegt, wird in keinster Weise gewährleistet, dass Compiler sich entsprechend verhalten. Für C++ gab es nach dem Standard von 1998 zum Beispiel eine lange Zeit (einige Jahre), in der fast kein Compiler standardkonform war.
Also was soll die Standardisierung von Programmiersprachen, wenn man so etwas dadurch nicht gewährleisten kann?
-
funcoder schrieb:
Manche von euch fänden es anscheinend toll wenn z.B. die Elektrik im Haus verlegt wird wie es einem passt. Mir ist sowas nicht egal und ich bin froh es Normen gibt und da gibt es tausende von Beispielen wo eine Norm in der Industrie und Handwerk wichtig ist.
Ein Problem dabei ist, dass der Kern einer Sprache ein organischer Entwurf ist, in dem jeder Teil die meisten anderen voraussetzt, mit einem Wort: ein Kunstwerk. Das ist in den meisten anderen technischen Norm-Gebieten nicht so sehr der Fall.
Die guten Sprachen sind von Einzelpersonen oder kleinen Gruppen entworfen worden. Sobald sich später eine Kommission an die Normierung gemacht hat, sind Kompromisse gemacht worden, die oft zu Lasten der Eleganz gegangen sind. Common Lisp ist ein oft zitiertes Beispiel dafür. Common Lisp is politics, not art.
-
Gregor schrieb:
funcoder schrieb:
@Gregor: Jemand der auf den Namen aufpasst, also privatisiert. Tut mir leid, nein danke!!!
Naja, aber so ist das eben. Dadurch, dass eine Sprache bei einer großen Standardisierungsorganisation als Norm vorliegt, wird in keinster Weise gewährleistet, dass Compiler sich entsprechend verhalten. Für C++ gab es nach dem Standard von 1998 zum Beispiel eine lange Zeit (einige Jahre), in der fast kein Compiler standardkonform war.
Also was soll die Standardisierung von Programmiersprachen, wenn man so etwas dadurch nicht gewährleisten kann?
Nein natürlich müssen sich die Compilerherstellen nicht daran halten, aber dann können sie auch nicht mit dem Zusatz ISO auf dem Markt und jeder nimmt dann aber lieber den der sich an die Norm hält. Es wird halt ein definiertes Verhalten garantiert.
µngbd schrieb:
Ein Problem dabei ist, dass der Kern einer Sprache ein organischer Entwurf ist, in dem jeder Teil die meisten anderen voraussetzt, mit einem Wort: ein Kunstwerk. Das ist in den meisten anderen technischen Norm-Gebieten nicht so sehr der Fall.
Die guten Sprachen sind von Einzelpersonen oder kleinen Gruppen entworfen worden. Sobald sich später eine Kommission an die Normierung gemacht hat, sind Kompromisse gemacht worden, die oft zu Lasten der Eleganz gegangen sind. Common Lisp ist ein oft zitiertes Beispiel dafür. Common Lisp is politics, not art.
Und C++ ist ISO und ist mit sicherheit auch ein Kunstwerk und Jemand hat mal als Einzelperson damit angefangen usw. usw. usw.
Bashar schrieb:
Die deutsche Rechtschreibung ist auch genormt, Pfuscher.
Ja ich habe eine Lese-/Rechtschreibschwäche und trotzdem halte ich mich im Beruf an Normen damit es andere leichter habe und es ist ein schönes Gefühl arbeiten zu können mit dem Wissen man macht alles richtig da man nach der gleichen Norm arbeitet wie alles anderen, wenn sie ihren Job gut machen. Alles andere sind eben Pfuscher.
@schuuuuh: Ja na sicher pfuschen bestimmt auch Microsoft und Youtube Google eine Menge. Die haben nur das nötige Geld das dies nicht so sehr ins Gewicht fällt und z.B. das Glück das viele Mängel schon Gesellschaftstauglich geworden sind und die Leute sind schon froh wenn gepatcht wird. Ist wie wenn ich einen Schaltschrank baue und noch 100mal zum Kunden hin muss um nachzubessern weil ich mich nicht an die Normen gehalten habe.
Das dann noch der Kunde zufrieden ist muss man erstmal in einem anderen Industriezweig schaffen.
Man merkt immer wieder das die IT-Branche noch so was wie in den Kinderschuhen steckt. Aber anscheinend wollen das auch nur ganz wenige ändern und fühlen sich wohl im Chaos. Nicht falsch verstehen ich will nicht jeden Pups normieren aber die essentiellen Werkzeuge wäre schonmal ein Anfang, aber selbst hier gibt es schon in einem kleinen Programmiererfroum widerstand.
Jetzt wird mir so einiges klar...Das Thema kann geschlossen werden.
Gruß vom Funcoder
-
funcoder schrieb:
Es wird halt ein definiertes Verhalten garantiert.
Wird es das? Im C++-Standard steht, dass der Compiler bei
int i;
eine Integer-Variable anlegen soll, die in dem entsprechendem Scope miti
anzusprechen ist. Mehr aber auch nicht.
Der Standard schreibt z.B. nicht vor, welchen Maschienencode der Compiler daraus generiern soll, wenn überhaupt Maschienencode. Er garantiert auch nicht, wie dasint i;
in den Compiler rein kommt oder was der Nutzer drücken muss, um daraus ein Kompilat zu machen.Wäre ja auch langweilig, wenn alle standardkonformen Compiler exakt das gleiche Verhalten hätten.
Der Vergleich mit dem Elektronikschrank ist aber wirklich verfehlt, da die entsprechenden Normen für Elektronikschrank und Programmiersprache schon einen ganz anderen Zweck haben.
Beim Elektronikschrank hat man Normen, um z.B. für Sicherheit zu garantieren. Etwa dass bei einem Blitzschlag das Ding nicht um die Ohren fliegt. Oder dass die Leitungen mit einer definiert dicken Isolierung versehen sind. Kurz: die Normen sind da, damit das Ding so funktioniert wie es soll.
Aber bei Programmiersprachen? Die Normen sorgen weder für Sicherheit noch für Funktionalität. Ob im Standard
int i
oderi: int
vorgeschrieben ist, hat darauf keinerlei Einfluss. Die Normen haben nur den Zweck, dass das Programm auf möglichst vielen Compilern/Interpretern ohne Anpassungen ausgeführt werden kann und dass sich die Sprache nicht auseinanderentwickelt.Insofern kan man das so überhaupt nicht vergleichen.
-
Kritische Systeme entwickelt man doch eh für einen bestimmten Compiler in einer bestimmten Version. Allein weil ISO9000 vorschreibt, dass man nach X Jahren noch die Original Entwicklungsumgebung wiederherstellen können muss und die Standards lassen einem ja oft viel Spielraum für eigene Sachen. Gerade die ISO C und C++ Standards sind ja so geschrieben, dass man Compiler für Toaster bis hin zu Supercomputern schreiben kann.
http://gcc.gnu.org/onlinedocs/gcc-4.5.0/gcc/index.html#toc_C-Implementation
http://msdn.microsoft.com/en-us/library/ft39hh4x(VS.80).aspxUnd für C und C++ gibt es zB einen ISO Standard, aber kein Gremium, dass die Implementierungen zertifiziert.