BlackJack hat geschrieben:Ich habe behauptet man kann sich mit Rust nicht so leicht in den Fuss schiessen wie mit C++.
Nur, wenn du unsauberes C++ schreibst. Sauberes C++ schießt dir nirgends hin. Da sitzt das Problem wie üblich vor dem Bildschirm.
BlackJack hat geschrieben:deshalb wollte ich gerne wissen was man nicht machen kann, aber in der Regel will.
Performance groß, Ressourcennutzung klein. Geht mit Rust nicht.
BlackJack hat geschrieben:Das die Existenz von Programmiersprachen nicht immer sinnvoll ist würde ich unterschreiben. Genau bei C++ bezweifele ich das nämlich.
C++ ist für andere Dinge geeignet als Python. (Du würdest keinen Kernel in Python schreiben, oder?) Welche Lücke Rust füllt, erschließt sich mir aber nicht. Rust existiert nur, weil Mozillianer zu doof für C++ sind, scheint mir. Ganz davon abgesehen, dass ich von Programmiersprachen, die einer großen "Firma" (ob nun "gemeinnützig" oder nicht) gehören, eher abgeschreckt bin.
BlackJack hat geschrieben:Go, C#, und Java werden tatsächlich ernsthaft benutzt.
Bei Java erstaunt mich das am meisten, aber wer benutzt bitte Go? Google selbst jedenfalls meines Wissens so gut wie gar nicht, die haben dafür einiges an Pythoncode rumliegen. Das hat sicherlich gute Gründe.
BlackJack hat geschrieben:Ich behaupte aus eigener Erfahrung das es nicht möglich ist *sinnvoll* mit jeder Sprache klar zu kommen.
Beispiel?
BlackJack hat geschrieben:Nur bei C++ habe ich massive Probleme. Insbesondere *weil* ich schon so viele andere Sprachen gesehen habe, verstehe ich nicht wieso man sich so etwas antut, diese Komplexität die man da ständig beachten muss
Muss man nicht. Schau doch bitte mal spaßeshalber C++17 an. Es hat sich einiges geändert in den letzten Jahrzehnten. Viele der Hilfskonstrukte von "früher" sind nicht mehr nötig, sogar die explizite Typendeklaration
nicht mehr in jedem Fall.
BlackJack hat geschrieben:obwohl dabei am Ende kein Mehrwert gegenüber Sprachen herum kommt, die wesentlich weniger komplex sind, oder die einen bei hoher Komplexität wenigstens nicht so einfach in offene Messer rennen lassen.
Doch, optimale Nutzung von Ressourcen. Klar kannst du auch in Java oder C# eine ausreichend komplexe Software programmieren. Die sind dann halt
nicht ganz so nett zu deiner Rechnerauslastung.
BlackJack hat geschrieben:Das C++ auch C beinhaltet, eine andere Sprache mit sehr ähnlicher Syntax, erhöht die Komplexität unnötig.
Das ist ja auch nicht ganz richtig. C ist
fast eine Teilmenge von C++, das ist nicht nur "ähnlich". Aber "komplexer" wird davon nichts, oder würdest du Rust auch als "unnötig komplexen Assembler" bezeichnen? Gegenüber C mit seinen, äh, (Eigenheiten*)*

ist so ein schöner C++17-Code eine wahre Wohltat für den gebeutelten Verstand.
BlackJack hat geschrieben:Wenn man C++ beherrschen möchte, muss man auch C können
Nein. Es hilft bei der Codeoptimierung, aber du sozusagen kannst ein Leben lang guten C++-Code schreiben, ohne eine einzige Zeile C zu verstehen.
BlackJack hat geschrieben:Das man in C geschriebene Bibliotheken einbinden kann ist wichtig
Nur, wenn du es willst. Ich habe mal spaßeshalber mit der libcurl (antiker C-Code) in C++ herumgespielt. Das fühlt sich schon beim Schreiben wie ein Fremdkörper an. Du musst aber nicht unbedingt C-Bibliotheken einbinden, du könntest auch einfach eine in C++ nutzen.
Oder selbst schreiben. Zusammenkleben ist eher was für Javaleute. Das ist dann aber kein Programmieren.
