2016-11-29 75 views
6

在书中语言程序设计概念,它说:什么是类型完整性原则?

PYTHON计数程序作为第一类值,所有的原始和复合值一起。因此PYTHON很好地符合类型完整性原则。

我仍然没有得到它。

+1

可能会引起您的兴趣:https://www.researchgate.net/publication/240319683_Type-completeness_as_a_language_principle – Julien

回答

7

的类型完整性原理:

无操作应在类型参与值 来任意限制。 - 瓦特

一等值可以评价,作为参数传递 并用作复合材料的值的组件。 功能语言试图不作类别区分,而命令式语言通常将功能(最好为 )视为第二类值。

几乎所有的编程语言都会限制可能作为值传递的实体类型 (因此具有有意义的 类型)。在C或C++中,函数不是值,但指向 函数是。类不是值。

在Java中,方法和类不是值,尽管您可以通过 获取表示类的特定对象作为值,而在Java中,您可以将方法引用作为值传递。但是,软件包不是 值。

在Haskell中,函数是第一类值,因此可以作为参数传递并作为值返回。由于Haskell是静态类型的,所以类型系统能够表达函数类型。