浏览 1925 次
锁定老帖子 主题:关于语言的随想
精华帖 (0) :: 良好帖 (0) :: 灌水帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2009-05-02
今天和一个多年不见的朋友通了电话,聊了很多东西,谈到了对语言的一些看法,记录下来备忘. 语言既是思维的产物,又反过来影响思维本身. 学习一种语言,就要学习它的内在思维逻辑和思维方式. 使用语言的过程,会影响到你的思维方式本身. 徐小平当年到bell应聘,招聘人员说,徐先生你不懂计算机语言,到我这里来干啥?徐小平说,我虽然不懂计算机语言,可我是人类的语言学专家,计算机的语言是模拟人类的语言创造出来的,所以我对计算机语言也很快可以成为专家.于是他通过了. 当时我听这个故事,只是感觉徐小平口才很好,今天再回味,才发现他讲的真是至理名言. 计算机语言和人类的语言都有着类似的发展规律,刚开始这个语言是简单的,然后逐渐发展,变得复杂,然后就产生若干分支,然后就变得太过复杂,最后被废弃掉. 所有的语言,都同时在向两个方向演化,一个方向是变得简化和简单,另一个方向是变得复杂,庞大,这两个方向是并存的.譬如文言文和白话文一样并存,譬如书面语言和口头语言一样并存. 计算机语言的演化比自然语言迅速的多,但仍然遵循着类似的发展规律,只不过更加快速而已. 同时学习两种语言是不够好的,容易相互混淆. 古文和今文的语法可能不同,但要表达的意思是一致的.在不同时代的古文,有着不同的特点,这就是语言演化带来的结果. 最早的语言本身是简洁的,譬如先秦时代的古文,用字准确,简洁明了.到了汉代,语言就进化到了史记这种大块头的出现,再以后到了唐诗,宋词.语言的规范性增加了,规则也复杂多了. 到了明清两代,语言已经发展到了形式非常完备的阶段,形成了八股文这种形式. 但形态的复杂,同样给语言的学习带来了更大的困难,最后读书变成了一件非常困难的事情. 于是又有了白话文运动,把文言文赶下了历史舞台. 刚开始的白话文,是简单简洁的.因为回归到了口语阶段. 以后白话文的发展也走上了文言文的老路,语言变得越来越复杂. 很多人,包括我在内,从小学一年开始学语文,到上了大学,语文仍然很差,几乎不能顺利写点东西出来. 为啥呢?因为学到的规则太多了,没有自己自由发挥的空间了,越学越不会写了. 语言日益复杂的另外一个证据,就是现在很多用白话文写的东西,几乎没有人可以看懂,不得不再搞出很多解释性的东西出来,加以详细解释.另外就是空话,套话太多,看了以后不知道到底要说啥. 具体例子我就不举了,省的自找麻烦. 于是语言的另外一种机制开始起作用,开始进行自我的简化,体现在网络上,就是bbs论坛和blog的文风. 这种文风的特点,就是随性而至,写到那里算那里,并不强求符合逻辑,符合所谓的语法规则. 尤其有意思的是,发表到论坛的文章,一个一个接着回复,最后可能就离题万里. 而这正好体现了语言的自由发展和随意性特点. 扯了半天语言,现在回到计算机语言. 计算机语言的发展,仔细观察,其规律和自然语言是一样的. 先简单,后复杂,后废弃.然后出来一种新语言,然后再继续重复这条路...... 大部分语言都消亡了. 所有的语言都在不断演化之中. 每一个版本出来,和上一个版本可能是兼容的,也又不兼容的成分. 学习第一种语言最困难,以后再学一种就容易多了. 学了好几种语言以后,你会发现他们的本质都是差不多的. 计算机语言,就是人和计算机对话的语言,通过这种语言,我们教给计算机如何进行思考. 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2009-05-02
|
|
返回顶楼 | |
发表时间:2009-05-03
最后修改:2009-05-03
我前段时间也想来着
1,存在一种母语,生成所有的DSL语言 2,各个领域内用母语生成DSL语言 翻了翻,发现matin.flower“面向语言编程”,因此大家别丢板砖给我了。转发ing |
|
返回顶楼 | |
发表时间:2009-05-03
bonny 写道 我前段时间也想来着
1,存在一种母语,生成所有的DSL语言 2,各个领域内用母语生成DSL语言 翻了翻,发现matin.flower“面向方面的语言”,因此大家别丢板砖给我了。转发ing 1. natural language / pseudocode 2. any computer language |
|
返回顶楼 | |
发表时间:2009-05-03
最后修改:2009-05-03
bonny 写道 我前段时间也想来着
1,存在一种母语,生成所有的DSL语言 2,各个领域内用母语生成DSL语言 翻了翻,发现matin.flower“面向方面的语言”,因此大家别丢板砖给我了。转发ing 是“面向语言”而不是“面向方面”吧…… Martin Fowler 他们推广 Ruby 也是因为 DSL 和 LOP (Language Oriented Programing)。 flower …… 阿花是谁? LOP 的特点是 “暴露简单性” 而不是 “封装复杂性”。 REBOL 的 GUI lib 只有 600 多 k,就是因为 LOP 的强大效果。 |
|
返回顶楼 | |