Все на теже типовые темы и про "проверку индексов"

топ 100 блогов kouzdra10.06.2016 К http://kouzdra.livejournal.com/3027485.html?view=comments

Норот видимо не понимает о чем идет речь:

Напомню, что в Паскале при обращении к массиву индексы компилятору проверять не надо. Проверка там выполняется (если надо) при преобразовании integer к индексному типу массива l..u

То есть если ты опишешь индексную переменную сразу как l..u - то никаких run-time проверок в простых случаях (типа цикла от l до u) и не надо.

Ну так вот тип 1..10 в этих терминах и есть { i : int | i >= 1 && i <= 10 }

Диапазонный тип как раз и есть частный встроенный ad hoc в язык случай refined types.

Отличие от Паскаля только в том что неявные приведения с run-time проверкой не предполагаются. С другой стороны - средства для доказательства того что тип в действительности такой намного мощнее - включают в себя кроме прочего general purpose дедуктивную систему. И если компилятор не способен сам убедиться что "все хорошо" - есть масса способов ему это "подсказать" (вплоть до явного выписывания прямого доказательства).

Оставить комментарий

Архив записей в блогах:
...или многие знания прибавляют печали. :) Я тогда не поленился, взял словарь и перевёл текст "Hey, you!" Ковырялся долго, и в памяти с тех времён остался только смысл песни, который достаточно точно передавался словами "эй, ты", "черви съели мозг" и "без борьбы". А тут, думаю, дай ...
В Сети стали появляться технические подробности о графическом ускорителе NVIDIA GeForce GTS 450. Напомним, этому продукту предстоит конкурировать в среднем сегменте с моделями серии ATI Radeon HD 5700. Основой 3D-карты стал GPU GF106. Как утверждается, в его ...
Несколько лет жизни с честнейшим Сансанычем, который даже мне (твою дивизь?!) умудряется проиграть в покер, жутко испортили мой характер. Я забыла, какими поганцами могут быть хабибы. Однако несколько месяцев ведения блога восстановили мое восприятие, и я вспомнила, сколько было прочитано ...
Эскапады Рамзана Кадырова хотя и не угрожают напрямую Владимиру Путину, расшатывают выстроенную им политическую систему. Приблизиться к пониманию будущего РФ можно, если опереться на исторические факты. Для российской прогрессивной общественности Рамзан Кадыров давно превратился в ...
Как известно, после начала поставок в Украину ПТРК "Джевелин" в российской армии стали ставить на танки, отправляемые на Донбасс, оригинальные сварные решетки. Их быстро окрестили "козырьком прапорщика" и предположили, что такая защита будет провоцировать снаряд взорваться на самой ...