海纳百川

登录 | 登录并检查站内短信 | 个人设置 网站首页 |  论坛首页 |  博客 |  搜索 |  收藏夹 |  帮助 |  团队  | 注册  | RSS
主题: 从自然语言,人造语言,编程语言的对照,说到汉语,英语的优缺点比较(1)
回复主题   printer-friendly view    海纳百川首页 -> 驴鸣镇
阅读上一个主题 :: 阅读下一个主题  
作者 从自然语言,人造语言,编程语言的对照,说到汉语,英语的优缺点比较(1)   
所跟贴 从自然语言,人造语言,编程语言的对照,说到汉语,英语的优缺点比较(1) -- 吴耐 - (7616 Byte) 2009-10-16 周五, 上午11:12 (1008 reads)
土一豆






加入时间: 2009/09/13
文章: 481

经验值: 16061


文章标题: 编程语言和自然语言,都有所谓syntax和semantics,除了这一点外并无多少相似, (231 reads)      时间: 2009-10-17 周六, 下午5:09

作者:土一豆驴鸣镇 发贴, 来自 http://www.hjclub.org

特别是单词和OOP中的对象完全不是一个概念。按照OOP的讲法,类似于对象的只能是名词,动词应该是函数或者方法,而形容词则是对象的状态,副词就比较可疑了,可能是函数的参数什么的...还有介词,代词.......这样类比下去只能是一塌糊涂。拿OOP来说事,从一个侧面也反映出了OO对编程方法的毒化之深。程序员们手持OOP的大锤,把他们看到的一切东西都当作名为Object的钉子,加以捶打,包括自然语言。

汉语和编程语言另有一个相似之处,就是缺乏单词形态变化(morphology),比如数量,时态,主宾格,性别,前后缀造成的词性变化等。这样词的排列就非常重要,例如名词的主宾格基本上完全由其在句子里的位置决定。而英语的单词排列顺序就没那么重要。据说拉丁语与汉语完全相反,语义基本上可由单词的形态决定,顺序无关紧要。其实古汉语中有少量morphology的成分,比如“我”相当于"me", “吾”就相当于"I"的地位,但这些并没有被现代白话文继承下来。

所谓汉语的多态,多半是由于morphology的缺乏造成的。老吴也提到了,这加剧了语义的上下文依赖,未必是什么好事。另外一个原因就是翻译过程中使用了新造的组合词,这有好处也有坏处,老吴都讲过了。另外如果一定要强行套用编程语言的概念的话,这里的多态除了类似OOP继承体系中的纵向daynamic dispatch,还有类似于泛型(Generic)的parametric polymorphism以及c++中的函数重载和操作符重载。

除了morphology,汉语也缺乏主从句的结构。老吴说这是函数嵌套,我在这里也乱弹一下:英语是一种函数式语言,function as first class,可以用高阶函数来表达复杂的算法。

作者:土一豆驴鸣镇 发贴, 来自 http://www.hjclub.org
返回顶端
阅读会员资料 土一豆离线  发送站内短信
显示文章:     
回复主题   printer-friendly view    海纳百川首页 -> 驴鸣镇 所有的时间均为 北京时间


 
论坛转跳:   
不能在本论坛发表新主题
不能在本论坛回复主题
不能在本论坛编辑自己的文章
不能在本论坛删除自己的文章
不能在本论坛发表投票
不能在这个论坛添加附件
可以在这个论坛下载文件


based on phpbb, All rights reserved.
[ Page generation time: 0.984939 seconds ] :: [ 24 queries excuted ] :: [ GZIP compression enabled ]