术语:"类型表达式"的精确定义是什么?在Haskell中,正如Thompson的书中所使用的那样?

时间:2015-02-20 13:01:24

标签: haskell types expression terminology

Thompson的“Haskell - 函数式编程技术”一书中使用的术语“类型表达式”的精确定义是什么?似乎这个术语没有在书中定义。

例如,未在索引中列出。此外,我试图在书中搜索一个明确的明确定义,但一无所获。

相关问题:是type variabletype expression

让我们考虑以下类型(表达式?):

a->b

现在,如果我将a替换为c,那么c->b将成为a->b的实例吗?

术语“类型表达式”用于例如第314页(本书的第三版):

  

作为类型的集合,我们寻找由给定的集合的交集   (a,[Char])和(Int,[b])。我们怎样才能得出一个描述   这个路口?在我们这样做之前,我们会修改并介绍一些   术语。

     

回想一下,通过替换给出了一个类型的实例   类型变量或类型表达式的变量。一个类型表达式   是两个类型表达式的常见实例,如果它是一个实例   每个表达。

     

两个表达式的最常见的常见实例   是一个常见的实例mgci与其他所有常见的属性   instance是mgci的一个实例。

     

现在我们可以描述一下   由两个类型表达式给出的集合的交集。它被称为   两者的统一,这是最常见的常见情况   两种类型的表达式。

1 个答案:

答案 0 :(得分:3)

如果你想把类型视为“事物”,那么人们可以谈论我们用来描述它们的词语,像IntCont (r -> a) (Maybe q)这样的词作为描述这些事物的语言。类似的区别在于数字3和Haskell代码片段3

3是表示数字3的(值)表达式的方式相同,Integer是表示整数类型的类型表达式。