Hallo,
Ich bin jedenfalls mit Programmiersprachen wie Pascal und später C "groß geworden", bei denen der Datentyp sehr wichtig ist[1], und mir gefällt dieses Konzept insgesamt besser. Aber das ist, wie gesagt, Geschmackssache.
Ich finde es extrem lästig, wenn man ständig jeden Mist casten oder sonstige Verrenkungen machen muss.
das muss man normalerweise nur sehr selten, weil man ja selten absichtlich inkompatible Datentypen zwangsverheiratet. Daher ist es eine feine Sache, wenn der Compiler einen solchen Versuch mit einer Fehlermeldung quittiert. Nur wenn ich *wirklich* einen normalerweise inkompatiblen Typ verwenden will, aus welchem Grund auch immer, muss ich casten[1].
Die diversen verschieden "breiten" Integer-Typen sind ja aus gutem Grund zumindest zuweisungskompatibel, d.h. ich kann jederzeit ein int einsetzen, wo ein char erwartet wird (und umgekehrt). Beim impliziten cast auf den kleineren Typ gibt's normalerweise eine Warnung vom Compiler, weil signifikante Information verlorengehen könnte.
Und so ist die feste Typisierung und Typprüfung IMHO kein Hemmnis, sondern eher ein zusätzliches Hilfsmittel, das dazu beiträgt, logische Fehler zu vermeiden.
Ciao,
Martin
[1] Bei Klassenhierarchien in C++ sieht es teilweise etwas anders aus, hier sind Casts auch bei korrekten Zuweisungen oder Operationen oft notwendig. Das wird mir dann auch lästig.
Butterkeksverteiler zu werden ist vermutlich eine der wenigen beruflichen Perspektiven, die sich noch bieten, wenn man einen an der Waffel hat.
(wahsaga)
Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(