LINUX.ORG.RU

История изменений

Исправление monk, (текущая версия) :

который делает это увеличением ширины в два раза

Который делает это увеличением ширины в два раза при неизменной высоте. Для квадрата данная операция невозможна.

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

Это в том случае, если у квадрата a.x = a.x*2 будет неявно менять a.y. То есть нарушать контракт на сеттер.

Всякие неявные предположения о данных, не выраженные формально через средства языка, никаким боком к системе типов языка не относятся.

Вот так вот. То есть, если для переменной «температура в градусах Цельсия» должно быть допустимо (по контракту) значение -500? И количество пальцев на руках — любое число от 0 до 255?

Исходная версия monk, :

который делает это увеличением ширины в два раза

Который делает это увеличением ширины в два раза при неизменной высоте. Для квадрата данная операция невозможна.

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

Это в том случае, если у квадрата a.x = a.x*2 будет неявно менять a.y. То есть нарушать контракт на сеттер.

Всякие неявные предположения о данных, не выраженные формально через средства языка, никаким боком к системе типов языка не относятся.

Вот так вот. То есть, если для переменной «температура в градуса Цельсия» должно быть допустимо (по контракту) значение -500? И количество пальцев на руках — любое число от 0 до 255?