- 论坛徽章:
- 2
|
回复 51# pmerofc
这本来就不是哲学,就算是,神奇的土地上也没几个人能到这个高度,就连华老也只能窝里香。
不讲xx是,xx本质 是几乎不能做正常讨论的,比如ag建楼里就有“作为下标操作符的方括号,其真确含义是:”这样的对真确含义的定义。。。呵呵。
类型系统里有很多类型,基本的,复合的,递归的,但没有所谓的推导类型,只有类型的推导。
C的指针为什么要单独拿出来,是因为指针是独立于语言系统的,一个语言系统,或者说类型推断的语言系统,可以没有指针但必须要有类型系统和推断,这个可以参见SQL语系,ML语系等系统。甚至Java都没有这个东西。
C的指针的特殊在于它直接体现的物理模型而不是逻辑模型,它体现的是access而不是compute,而类型系统不会care如何access某个object,例如SQL就是很显然的一个不care如何access对象的例子。因此当你在C里access某片存储的内容之后,还需要dereference还原本来的type才能进行compute。当我们解读一个指针的时候,必须的说这个指针是指向xx类型的对象的指针。
指针是机制,是访问机制,不是策略,策略的应用需要建立在机制之上但不能反过来说。所以各种树,图,多态等类型都在指针提供的机制之上构建策略。同样策略之下的机制可以有很多种各不相同的机制。但把机制上升到策略的高度,或许可以等于说“我们都知道只有H、O、C等原子事实上并不等同于人”,而你现在做的我个人认为恰是告诉大家H,O,C就是人。
所以,指针是字面上的类型。 |
|