Linus Torvalds: Java A Horrible Language



  • _matze schrieb:

    this->that schrieb:

    Normalerweise mag ich ja Nerds (bin ja selber einer), aber der Kerl war mir schon immer unsympathisch.

    Ein Java-Fan! Packt ihn! 🤡

    Nein. Mir ist C++ auch lieber. Aber ich finde es laecherlich, irgendwelche Sprachen/Betriebssystem/wasauchimmer zu bashen.



  • 314159265358979 schrieb:

    Es ist besser als printf.

    Besser ist definitionssache bzw. auch anwendungsspezifisch.
    Es ist kein Müll, aber es gibt doch genug Fälle wo das gute alte "echte" printf besser ist.

    Artchi schrieb:

    Boost Format
    Habe ich zwar noch nie selbst angewendet, aber es wird gerne als gutes Beispiel genannt.

    +1
    Boost.Format ist kuhl 🕶



  • In welcher hinsicht ist printf denn besser?



  • es fängt damit an, dass deine Version gar keine formatstrings unterstützt. Qausi DAS Feature von printf.



  • Bau es halt ein, das ist ja nur eine primitive, beispielhafte Implementierung. -.-



  • 314159265358979 schrieb:

    Bau es halt ein, das ist ja nur eine primitive, beispielhafte Implementierung. -.-

    Also doch nicht besser als printf.
    Gut das wir das jetzt erkannt haben.



  • printf("%%", std::setprecision(10), 3.14159265358979);
    


  • Dann machen wir mal weiter, dass printf format strings kann, die die c++streams gar nicht abbilden können. Wie zum Beispiel "%5.2f"



  • Keine Ahnung wie die printf Formatstrings funktionieren, hab die noch nie gebraucht. Aber wie gesagt kann es nicht so schwer sein, die einzubauen.



  • otze schrieb:

    Dann machen wir mal weiter, dass printf format strings kann, die die c++streams gar nicht abbilden können. Wie zum Beispiel "%5.2f"

    printf("%%%%\n", std::setw(5), std::fixed, std::setprecision(2), d);
    


  • Auch wenns nicht schön aussieht, ihr vergleicht immer noch einen Ansatz (!!!) mit einer fertig ausgeklügelten Formatierungsfunktion.



  • Weil du behauptest, dein Ansatz sei besser (!!!) als eine fertig ausgeklügelte Formatierungsfunktion...



  • joa.. schrieb:

    Weil du behauptest, dein Ansatz sei besser (!!!) als eine fertig ausgeklügelte Formatierungsfunktion...

    Du brauchst dich nicht wundern: Es ist vollkommen normal, dass sich PI mehrmals im selben Thread widerspricht!



  • Nein, nein. Ich wundere mich keineswegs. Man muss es ihm nur sagen, damit er es vielleicht irgendwann lernt und sein Können auch richtig einsetzen kann.



  • Ne, tu ich nich. Aber da mir das sowieso niemand glauben wird, könnt ihr den Thread zumachen.

    Cheers.



  • void printf(char const* format)
    {
        std::cout << format;
    }
    
    template <typename Head, typename... Tail>
    void printf(char const* format, Head const& head, Tail const&... tail)
    {
        while(*str && *str != '%')
            std::cout << *str++;
    
        if(!(*str))
            return;
    
        switch(*(++str))
        {
        case '%':
            std::cout << '%';
            printf(++str, head, tail...);
            break;
    
        case 'x':
            std::cout << std::hex << head << std::dec;
            printf(str, tail...);
            break;
    
        default:
            std::cout << head;
            printf(str, tail...);
        }
    }
    

    Das baut man so ein. Weitere Nachteile wenn sich jemand da lange genug rangesetzt und alles implementiert hat? Was ist dann noch schlechter?



  • Ethon schrieb:

    Was ist dann noch schlechter?

    Das es hier nicht um PIs Selbstdarstellungsdrang gehen sollte?



  • rüdiger schrieb:

    otze schrieb:

    Dann machen wir mal weiter, dass printf format strings kann, die die c++streams gar nicht abbilden können. Wie zum Beispiel "%5.2f"

    printf("%%%%\n", std::setw(5), std::fixed, std::setprecision(2), d);
    

    Das letztere sieht aus wie ein Aufsatz im Vgl zum ersteren...
    Warum sollte jemand eine ganze zeile mit :: und hurxmurx ausschreiben wollen wenn "%5.2f" auch passt..



  • 314159265358979 schrieb:

    Es ist besser als printf.

    ...

    314159265358979 schrieb:

    Bau es halt ein, das ist ja nur eine primitive, beispielhafte Implementierung. -.-

    🙄

    314159265358979 schrieb:

    printf("%%", std::setprecision(10), 3.14159265358979);
    

    🙄 🙄

    314159265358979 schrieb:

    Keine Ahnung wie die printf Formatstrings funktionieren, hab die noch nie gebraucht. Aber wie gesagt kann es nicht so schwer sein, die einzubauen.

    🙄 🙄 🙄



  • Ich erklär jetzt einfach nichts mehr. Offenbar hat Ethon ja verstanden, wie es gemeint war, was mich zu dem Schluss führt, dass ihr meine Aussagen absichtlich wortwörtlich so interpretiert, wie sie da stehen. (Sprich, mit Absicht nicht das lest, was zwischen den Zeilen steht.)

    Würde ich nun erklären, dann hätte das den Effekt, dass
    #1 - dasselbe bei meinen Erklärungen nochmal auftritt
    #2 - niemand mir glaub, wie ich es gemeint habe
    #3 - der Thread eskaliert und ich sinnloserweise gebannt werde, weil andere mich nicht mögen.

    Wobei ich eigentlich nach deinen letzten Posts gedacht habe, du würdest dir Mühe geben, genau das rauszulesen, was ich meine, hustbaer. Da hab ich mich wohl getäuscht.


Anmelden zum Antworten