Erlang vs. C++



  • Es gibt halt Menschen, die nicht zwischen Spezifikation und Implementierung unterscheiden können.



  • Artchi schrieb:

    Es gibt halt Menschen, die nicht zwischen Spezifikation und Implementierung unterscheiden können.

    naja, aber wie toll wird wohl die implementierung sein, wenn die spec schon so verbuggt ist?
    🙂



  • Th69 schrieb:

    Das sind keine Fehler von C++, sondern nur Fehler in der Beschreibung des C++ Standards!

    Aber die Beschreibung IST C++. Was soll C++ sonst sein? Eine Referenzimplementierung gibt es nicht.



  • ;fricky: Dann wäre "ANSI C" aber genauso fehlerbehaftet (denn es wurden auch dort mehrere "Technical Corrigendums" rausgegeben, s. http://www.open-std.org/jtc1/sc22/wg14/www/standards...

    Und Bashar: wegen Syntax- oder Formulierungsfehlern (in so einem umfangreichen Dokument) gleich die ganze Sprache als fehlerbehaftet anzusehen... 👎



  • Th69 schrieb:

    ;fricky: Dann wäre "ANSI C" aber genauso fehlerbehaftet (denn es wurden auch dort mehrere "Technical Corrigendums" rausgegeben, s. http://www.open-std.org/jtc1/sc22/wg14/www/standards...

    Füttere doch bitte den Troll nicht.

    Und Bashar: wegen Syntax- oder Formulierungsfehlern (in so einem umfangreichen Dokument) gleich die ganze Sprache als fehlerbehaftet anzusehen... 👎

    Du meinst die Sprache ist perfekt geschaffen, und nur ihre schriftliche Überlieferung fehlerhaft? 😉



  • Genau so ist's -)

    Wenn ich mich bei meinen Projekten auf die Spezifikation zu 100% stützen müsste, hätte ich entweder nichts mehr zu tun (weil kein Spezifikation vorliegt !) oder aber meine erstellten Programme wären fehlerhaft (und das gibt es bei mir nicht! -) Es ist dann einfach nur nicht feature-complete -).

    Und ich denke, die Compiler-Hersteller verlassen sich auch lieber auf den "gesunden Menschenverstand" als die C++ Spezifikation buchstabengetreu umzusetzen...



  • Woher kommt den der Template-Parameter-Bug?

    template<class A<class B>> // Compiler: I don't like compile it!
    class X
    {
    ];
    


  • Artchi schrieb:

    Es gibt halt Menschen, die nicht zwischen Spezifikation und Implementierung unterscheiden können.

    Es gibt halt Menschen, die nicht wissen was C++ ist.



  • Zeus schrieb:

    Woher kommt den der Template-Parameter-Bug?

    kein Bug. Es gibt gute theoretische Gründe, weswegen es damals nicht erlaubt wurde.



  • otze schrieb:

    Zeus schrieb:

    Woher kommt den der Template-Parameter-Bug?

    kein Bug. Es gibt gute theoretische Gründe, weswegen es damals nicht erlaubt wurde.

    Die würde ich gern hören 😃

    Btw:
    In der C# Spec 3.0 in Abschnitt 2.4.5 steht wie die Scanner-Grammtik auszusehen hat, damit >> nicht als Right Shift sondern als zwei "schliesende Type-Parameter-Klammer" zu erkennen ist.

    Aber nun es ist Offtopic xD



  • http://en.wikipedia.org/wiki/Maximal_munch

    Aber da man im neuen Standard drum herum gefummelt hat, wirft sich natürlich die Frage auf, warum es nicht gleich so, bzw. anders realisiert wurde. Zum Beispiel wäre das Problem bei anderen Klammertypen nicht aufgetreten.



  • Manchmal kommt man erst zu einem späteren Zeitpunkt auf eine Lösung? Soll ja nicht ganz unmenschlich sein, dieses Verhalten.

    Aber auch die Compiler-Hersteller sind nicht dumm: der MSVC 2005 kann die >> bei Templates schon verstehen.



  • Artchi schrieb:

    Manchmal kommt man erst zu einem späteren Zeitpunkt auf eine Lösung? Soll ja nicht ganz unmenschlich sein, dieses Verhalten.

    Sicher, aber wenn ich sehe wie viel Zeit die sich für 'nen Standard lassen, dann sollten die offensichtlichsten Blödsinnigkeiten schon vor der Veröffentlichung behoben sein. Und wenn ein Compilerhersteller da drum herum bastelt, dann bringt mir das überhaupt nichts wenn ich portabel bleiben will. Von daher lasse ich mich auf solche Extrawürste eher selten ein.



  • Ich habe mich auch des öfteren gefragt, warum das ein Problem war damals. Ich meine gewusst sollten die das haben und ich bezweifle, dass das schwer ist korrekt zu parsen. Also warum haben die das wirklich zugelassen?!

    @Artchi
    Klar das ist ja kein Problem, wie z.B das template System war ja auch viel zu komplex für die Compilerhersteller (am Anfang) und da gingen gewisse Sachen einfach nicht. Vollkommen verständlich. Aber bei so etwas einfachem, wie den Klammern?!



  • Also warum haben die das wirklich zugelassen?

    Vielleicht weil andere Probleme dringender und schwieriger waren, als vom Programmierer ein weiteres Leerzeichen abzufordern.


Anmelden zum Antworten