- 论坛徽章:
- 3
|
回复 36# sqfasd
嗯, 那确实是语言设计者有意为之的事情.
说是 "巧合" 是强调它们的不同.
int[10] interger_ary; // 这正是 Java 声明数组的语法.
可见: Java这种语言更加地强调了类型和对象的分离. 这种语法形式规则, 从某种程度上来说也使得类型分析变得更简单一些(对象类型可以通过自右而左分析确定).
至于说数据抽象和执行流规划, 在语言层面上来说, 也不是业务逻辑的范畴, 它和语言设计本身相关.
比如, 汇编语言某种程度上可以看成是无类型的. 这种无类型导致了, 任意的数据结构设计, 都由程序员自己care, 它不太有"类型限定操作"的概念 -- 比如, 在C语言中, 对double类型的对象进行 按位或/与 运算是不合法的, 因此, C语言中有"类型限定操作"这一想法的体现; 汇编中则被进一步弱化了.
-- 类型正好是属于语言中数据抽象的范畴. 因此语言中的类型系统从某种程度上体现了 -- 如何抽象数据对象这一议题的重要内容.
而执行流规划, 也仍是语言设计相关. 有的语言是"并行"的 -- erlang. 有的语言有corutine. -- C语言本身没有"并行"概念; C语言没有 corutine. 这和语言本身是否支持某些特性相关, 因此, 我所指的 "执行流规划" 是指语言设计时需要care的事情.
进一步说, 有的语言有和C系语言大相庭径的语法形式规则; 它们更有和C系语言大相径庭的形式语义规则.
至于说实用主义与否, 一般情况下我是实用主义者, 偶尔无聊了我是扯淡主义者, 因此权当扯淡罢, 呵呵.
|
|