На этапе компиляции такие ошибки можно обнаружить при присваивании значений известных опять же на этапе компиляции. Остальные ошибки такого рода все равно придется решать в рантайме, а их именно так и решают сейчас, когда *интерпретация* инта не совпадает с требуемым диапазоном\набором значений.
Другое дело что тогда выброс исключения\assert\what-you-have будут локализованы, но ни что не мешает написать приблизительно тоже самое сейчас в виде типа данных с контрактом на изменение значения представленное базовым интом.
no subject
Date: 2009-10-16 10:54 am (UTC)Другое дело что тогда выброс исключения\assert\what-you-have будут локализованы, но ни что не мешает написать приблизительно тоже самое сейчас в виде типа данных с контрактом на изменение значения представленное базовым интом.