Aha, takže když uživatel místo int vloží text, tak necháš aplikaci slítnout? Hmm, to asi bude hodně stabilní.
Kite, Kite. Bavime se o chybach, ktere zpusobil programator, v tomto pripade dokonce o chybe, ktera by se dala odchytit pri prekladu, kdyby dany jazyk rozumne podporoval makra. Pokud nekdo nema validaci vstupu a necha probublat z formulare nenumericky vstup tam, kde je pozadovano cislo, ma mnohem vetsi problem, nez ze mu to shodilo aplikaci.
Jak víš, že tu chybu způsobil programátor, když se objektové aplikace sestavují až za běhu? Úplně stejná situace nastane, pokud uživatel otevře třeba XML s jinou strukturou. To při překladu neodchytíš. Validaci vstupu dělám až v objektu, který ten vstup má za úkol zpracovat, protože každý objekt si musí umět uhlídat vstupy. Jak bys chtěl při překladu odchytit chybu, když omylem při volání metody přehodíš dva parametry stejného typu?
Kromě toho vložit string nebo tuples do takové metody nemusí být chybou.
A ano, mas pravdu, ze v dnesnich interaktivnich systemech fakt runtime chyba obycejne nevede k ukonceni cele aplikace. Jenze problem, o kterem jsem puvodne psal, je v tom, ze (zase se opakuju) dnesni jazyky uz umeji nektere tridy chyb proste eliminovat. Ty ostatni se budto prizpusobi nebo budou v nekterych oblastech po pravu vytlaceny.
Nebudou vytlačeny. Při překladu stačí kontrola syntaxe. Zbytek je jen nadstavbou, která může být užitečná, ale není nezbytná.