Laufzeitfehler
Fehler, der während der Ausführung auftritt, nicht beim Kompilieren. Häufige Arten: NullPointerException, Division durch null, TypeError, Stack Overflow, Speichermangel, Netzwerk-Timeout.
Abzugrenzen von Syntaxfehlern (der Parser fängt sie ab) und Kompilierzeitfehlern (der Typchecker fängt sie ab). Statisch typisierte Sprachen reduzieren Laufzeitfehler, indem sie diese auf die Kompilierzeit verlagern. Modernes Sprachdesign versucht, Laufzeitfallen zu minimieren: Rust eliminiert NPEs über Option<T>, Swift über Optionals, TypeScripts Strict-Mode verlangt explizite Null-Prüfungen. Exception-Handling (try/catch) ist das Standardmuster. Moderne Alternative: Der Result-Typ (Rust, Haskell, modernes Java mit Record-Patterns) macht Fehler explizit in der Typsignatur sichtbar.