在汤普森的“ Haskell-函数式编程技巧”一书中使用的“类型表达式”一词的确切定义是什么?看来这句话在书中没有定义。
例如,它没有在索引中列出。另外,我尝试在书中寻找明确的明确定义,但一无所获。
相关问题:是type variable
一个type expression
?
让我们考虑例如以下类型(表达式?):
a->b
现在,如果我替换a
为c
,那么将c->b
是的实例a->b
?
例如,在第314页(本书的第三版)中使用了术语“类型表达”:
作为类型集合,我们寻找由(a,[Char])和(Int,[b])给出的集合的交集。我们如何得出这个交叉点的描述?在执行此操作之前,我们将修改并介绍一些术语。
回想一下,通过用类型表达式替换一个或多个类型变量来给出类型的实例。如果类型表达式是每个表达式的实例,则它是两个类型表达式的公共实例。
两个表达式的最通用实例是通用实例mgci,具有每个其他通用实例都是mgci实例的属性。
现在我们可以描述两个类型表达式给定的集合的交集。这称为两者的统一,这是两种类型表达式的最通用实例。
如果您想将类型视为“事物”,那么可以谈论我们为描述它们而写的单词,诸如Int
和Cont (r -> a) (Maybe q)
作为描述这些事物的语言。数字3和Haskell代码片段之间也有类似的区别3
。
以相同的方式3
是表示数字3的(值)表达式,Integer
是表示整数类型的类型表达式。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句