分类:
2008-05-05 12:39:27
计算机语言,和日常使用的自然语言有本质区别。英文、汉语这样的自然语言,用于人与人的交流,而计算机语言,用于程序员与计算机的交流,告诉计算机做什么,因为专用的缘故,计算机语言在语法组成上其实更简单。计算机语言经历了由低级机器语言到高级的发展过程,虽然高级计算机语言更接近了人类的自然语言,方便了使用,但当前阶段,计算机语言和自然语言仍然差的很远。也许随着计算机科学的发展,特别是人工智能的发展,将来能实现“自然语言编程”,但我认为,在当前的时代,是不能把计算机语言和自然语言等同,甚至不能并列而论。
当前的时代,要说计算机语言和自然语言的联系,那就是:当前的高级计算机语言都存在一个不大的关键字集合,每个关键字都分配了助记符作为名字,为了方便记忆和使用,助记符上取材于英语词汇。但决不能因此而认为这个编程语言是英文的,因为这样的语言编程,并不是“使用英文编程”。
“英文编程”尚且不存在,还搞什么“汉语编程”与其对抗?设想一下,如果把C语言的关键字改成其他助记符号(如拼音,汉字或蒙古文),将完全不会改变C语言的本质特点,这样做其实也没有太大意义的,因为这些助记符不会成为C语言学习的难点,真正难掌握的,是这些名字代表的概念与含义,而不是名字本身。
“汉语编程”,搞出一个助记符取材于汉语的新编程语言,如果仅仅以此为特点,或者在语法习惯上符合中国人的习惯,这个新的编程语言存在的意义根本就不大;如果还有其他值得存在的特色,助记符取材于哪个自然语言,完全不是重要问题,也完全没有必要使用“汉语编程”的概念来哗众取宠,使用这个概念甚至可能会掩盖这个新语言真正重要的特性。
其实,当前存在的大多高级编程语言,虽然在实现层次上差异较大(编译器或解释器,开发库,运行环境等等),在语言层次(语法与语义)上差异并不大,因为它们都分享一些相似的概念:常量,变量,语句,表达式,过程,函数,分支与循环,类与对象等等。高级计算机语言的发展,往往是因为重要概念的出现,如面向对象的技术的出现。我认为,如果这些概念没有大的发展,是不可能搞出什么真正值得关注的新玩意的。相反,我认为编程语言在实现层次上有更大的发展空间,特别是在框架,组件,虚拟机方面。
chinaunix网友2008-07-23 15:48:44
“易语言” 的存在,壮大的国内菜鸟黑客的队伍 对于毫无编程知识和经验的人们来说,汉语编程似乎很有吸引力 然而谁又能看得这么透彻呢。