Re[4]: Про ATS и зависимые типы
От: D. Mon Великобритания http://thedeemon.livejournal.com
Дата: 09.01.12 06:11
Оценка:
Здравствуйте, DarkGray, Вы писали:

DG>>>сорт и kind — это одно и тоже?

DG>в чем отличие?

kind — вид типа данных (или их конструкторов?)
sort — вид статического терма, не только типа данных. Например, утверждения (props) — статические термы, не являющиеся типами данных. Еще можно свой сорт ввести, который будет как-то использоваться при компиляции для формулирования некоторых инвариантов и фактов, но типом данных он сам по себе не будет. "Тип данных" — лишь один из сортов, грубо говоря.

DM>> А в ряде других случаев мы упираемся в то, что статические значения используются только в компайл-тайме, в рантайме их просто нет.

DG>согласен, по умолчанию они на runtime не переносятся, но их туда можно перенести тем или иным способом.

Можно, просто девиз ATS — точность. "If I could associate only one single word with ATS, I would choose the word precision. Programming in ATS is about being precise and being able to effectively enforce precision."
Хочешь рантайм-значение — опиши его явно: где оно создается, куда передается и как связано с остальными.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.