On Sat, 21.03.2009 19:25:16 , Aleksey Cheusov wrote: > >> Спецификация типов параметров в прототипе функции — самый лаконичный > способ > >> указания такой проверки. Плюс на один фрейм меньше в стектрейсе ошибки > >> (проверка не изнутри функции, а снаружи). Плюс автодокументированность. > >> > > Эти плюсы перекрываются одним большим минусом: далеко не всегда (если > > не сказать сильнее) список допустимых значений параметра в точности > > совпадает с полным списком значений его типа. > Список допустимых значений здесь и сейчас -- всегда подмножество > значений, который допускается типом. Чем "ближе" первое ко второму, тем > более строгая типизация. Вспоминаем хотя бы перечислимые типы Pascal-е > подобных языков и их полное отсутствие в С-подобных. > > > Другими словами, дополнительные проверки скорее всего всё равно > > потребуются. > Да, в поле действительных чисел квадратный корень можно извлекать только > из неотрицательных чисел. Run-time проверки все равно нужны. > Run-time ошибки все равно случаются. Увы. > > > А следовательно совсем не факт, что строгая типизация > > решает хотя бы не меньше проблем, чем создаёт. > Ни из чего, что написано выше это не следует. Не указано даже, какие > конкретно проблемы вам создает "строгая типизация". > Какие проблемы создает динамическая было уже указано не раз. Тебе важно, чтобы именно я это указал? Два или три человека уже эти проблемы упоминали выше по треду.
-- С уважением, Тихон Тарнавский. http://linuxforum.ru http://posix.ru -- To UNSUBSCRIBE, email to [email protected] with a subject of "unsubscribe". Trouble? Contact [email protected]

