ambient
- это не термин, связанный с FP или системой типов, а скорее метафора. Метафоры никогда не объясняют что-либо с идеальной точностью, поэтому вы можете только догадываться и «чувствовать». *
Говоря plain pure values are values of Id
, они означают, что значение любого типа также является значением Id[_]
.
val i:Id[Int] = 3:Int
val s:Id[String] = "3":String
Вы можете думать о type Id[A] = A
как о «функции для типа», которая возвращает свой параметр A
.
Примерно так, но на уровне типа:
def Id[T](i:T):T = i
Нет такого термина, как «функция для типов», но каждый конструктор типа является своего рода «функцией для тип". Они являются аналогом функций на системном уровне типов.