Ein "if" realisiert eine binäre Entscheidung. Bei statisch typisierten Sprachen wird abhängig von einem Booleschen Wert im "true"-Fall entweder das eine oder im "false"-Fall das andere gemacht. Auch wenn eine dynamisch typisierte Sprache die Booleschen Werte "true" und "false" kennt, ist das Verhalten für ein "if" meist anders definiert: Für jeden beliebigen Wert außer "false" tue dieses, für den Wert "false" jenes. Manchmal heißt es sogar: Für jeden Wert außer "false" und "nil" tue dieses, sonst jenes. Wissen Sie, warum statisch und dynamisch typisierte Sprachen sich so unterschiedlich verhalten? Statisch typisierte Sprachen nutzen die Typüberprüfung vor der Ausführung des Codes, um festzustellen, ob die "if"-Entscheidung tatsächlich binär ist. Das ist durch den Booleschen Datentypen garantiert, wenn die Typüberprüfung erfolgreich ist. Dynamisch typisierte Sprachen überpr...
gedanken, ideen, anregungen und links rund um themen zur informatik, bildung, studium