Re: Re: Re[4]: Популяризация

Sergeev Serge simne at yandex.ru
Fri Aug 6 13:21:10 PDT 2010


06.08.10, 22:31, "Евгений Карпенко" <notformat at gmail.com>:
> > А ещё хеши, ссылки, тайпглобы...
> Мы никак не можем понять друг друга. Я про типизацию говорил.

Так если говорить про типизацию - надо сначала разобраться зачем она нужна.

Реально у типизации есть две функции:
1. Использовать ровно столько памяти сколько действительно нужно и не больше.
2. Защита от целого класса ошибок, когда вычисления производятся с данными, которые не попадают в поле проверенных для данного кода.

Очевидно, что в наше время для большинства задач первый пункт, то есть размер, вообще не имеет значения, а вот второй пункт значительно интереснее.

По второму пункту важно не столько размер слова соответствующей переменной, сколько некоторая виртмашина, проверяющая перед вычислением, что данная переменная не вышла за границы, определенные для данного кода, как это кстати сделано в Аде и в Модуле.
И тут типизация Moose абсолютно рулит, а классические, Сишного типа системы типизации, просто недостаточно гибки для полноценной защиты.
Например, напишите мне пожалуйста, как в Java сделать "больше нуля"? А как насчет "все четные"?



More information about the Kiev-pm mailing list