我看所谓“汉语编程”

原创 2007年09月23日 17:28:00
最近看到solidot上有人灌水说又推出了一种汉语编程语言:
http://developers.solidot.org/article.pl?sid=07/09/19/0429258&from=rss

去看了看,没有任何新意,和中蟒的视觉感受很类似,试想,天天让一个正常的中国人写这样的汉语能不得神经病吗:
载入 系统
文件名 = 系统.参数[1:]

定义 修正行尾(文件):
    内文 = 打开(文件名).读入()
    内文 = 内文.替换('/n/r','/n')
    传回 内文

取 文件 自 文件名:
    写 修正行尾(文件)

上面这段是中蟒的“汉语代码”。中蟒在cosoft.org.cn上的统计信息也是没有继续维护了:
注册日期: 2002-04-29 15:07
活动统计: 0%

这类东西的本质基本上就是在所谓“英文编程”的lexing前面加上一步preprocessing,把汉语转换成英文,然后进入传统的编译过程。当然,如果更高明一点,可以用一个支持unicode的lexer/parser自己写一个直接支持汉字字符关键字的编译器,哈哈。不过,都是毫无创意。

用简单的直译来模仿英语的编程手法,实在是十分拙劣。单就打字来讲,输入for要比输入“循环”要简单的多。当然,打字不是问题,因为不是号称有打字比赛汉字输入速度已经超过英文了吗。

这个世界上,简直没有什么比毫无创意的发明更令人恶心和面目可憎的了!

在st. monad看来,这些人都没有认识到汉语比起英文的不同在什么地方。相比英语来说,汉语不适合、不善于简单的表达,而是适合凝练的表达。枪手贴[1]虽然通篇都是屁话,但是有一句还是值得在这里提一下的,那就是”汉语编程的原理是建立在汉字的本身优势上,汉字看起来很复杂,但表达的意义却很丰富。“可惜的是,用”循环“代替for却恰恰是挥刀子宫、完完全全放弃了这一优势。

有破亦当有立,到底什么样的编程语言适合用汉语来表达而英语不善表达呢?如st. monad前面说的,必然应该是语法“凝练”而不是“简单”的语言。

为了更容易学习、记忆、输入,英语编程语言必须抛弃自然语言的冗余表达,转而使用更少的关键字、更简单的语法,但是同时也意味着编程上的低级和复杂:为了表达一个逻辑结构,往往需要几十行到上百行代码。一个极端的例子就是brainfuck这个语言。看看BF写的hello world吧[2]:
++++++++++
[>+++++++>++++++++++>+++>+<<<<-]
>++.
>+.
+++++++.
.
+++.
>++.
<<+++++++++++++++.
>.
+++.
------.
--------.
>+.
>.
我想人是很难习惯写这种语言的。所以这个矛盾和自然语言的发展是一样的:说话的人为了省力气,倾向于用更少的单词表达更多的意思;听话的人为了更准确的理解,倾向于听到意义唯一的单词。所以自然语言的单词的表达意义的数量是这两个力互相较劲的结果。

回到汉语,汉语适合表达凝练的语法。这种语言不是没有,APL就是[3]。APL连很多Unicode字符都用上了。当然,我的意思并不是说把APL拿来用汉字翻译一下就OK了。而是,我们要使用这种思想,真正设计出特别凝练的、充分发挥汉语语言特点的汉语编程语言。

先这么多。

St. monad版权所有。转载请保留出处。谢谢。

[1] http://www.cnbeta.com/articles/38598.htm
[2] http://en.wikipedia.org/wiki/Brainfuck
[3] http://en.wikipedia.org/wiki/APL_(programming_language)

我看所谓“汉语编程”

最近看到solidot上有人灌水说又推出了一种汉语编程语言:http://developers.solidot.org/article.pl?sid=07/09/19/0429258&from...
  • st_monad
  • st_monad
  • 2007年09月23日 17:28
  • 4720

编程语言

计算机语言的种类非常的多,总的来说可以分成机器语言,汇编语言,高级语言三大类。 如果按语种分,可以分为英文符号语言和汉语符号语言两类。(典型的如:易语言、易语言.飞扬)电脑每做的一次动作,一个步骤,都...
  • daniel5666
  • daniel5666
  • 2008年01月27日 12:52
  • 1995

中国本土化编程(汉语编程)之我见

最近一段时期,在项目之余我一直在思索,在彷徨。作为一个程序员,作为伟大的中华民族的一份子,作为世界上最古老文明古国之一的我的祖国——中国。在世界软件业宛如天翻地覆般蓬勃发展的现今,无奈且妒忌的学习欧美...
  • cping1982
  • cping1982
  • 2007年11月06日 13:31
  • 19374

没有所谓的兄弟,不过只是一个玩伴

其实我早就意识到这一点,因为我不想承认。 现在发现,其实一直以来,陪伴在我身边的,一直只有我的家人。 也许是我害怕寂寞,我不想去承认,我一直认为最好的兄弟,其实一直以来,仅仅是一个玩伴。 以前看...
  • MRLullaby
  • MRLullaby
  • 2011年09月05日 21:54
  • 413

html中文编程对编程语言进行翻译的软件

  • 2010年05月13日 13:02
  • 203KB
  • 下载

中文编程·从入门到精通(奋斗的小鸟)_PDF 电子书

中文编程·从入门到精通
  • tjoy2005
  • tjoy2005
  • 2013年10月07日 19:12
  • 1343

死里逃生,我们闯进了决赛

上次写了《今夜,你们是最璀璨的球星》,huang MM等直言文辞犀利,很多没去现场的球迷也感觉身临其境。今天的比赛,我们死里逃生,闯进了决赛!我若有所思地想,是该写点东西了,毕竟,今晚的比赛过程相当意...
  • stpeace
  • stpeace
  • 2013年11月21日 00:52
  • 2891

我对中文编程和中国应该发展什么语言的论点[原创]

今天看了 http://subject.csdn.net/hanprograming.htm 讨论中文编程的问题。bluesen似乎也发表了高论。可以看出这个方面出力的没有,指点江山的倒不少。热切关注...
  • chengg0769
  • chengg0769
  • 2007年11月29日 23:09
  • 1318

谈谈编程语言的选择

常常有新人问我,我该学哪一门编程语言呢?编程语言太多了,我都不知道该选择哪一门编程语言来深入学习了!是的,我也曾被这个问题所困恼,当初学习软件编程时也经历了C/Java/C#这样的路线,后来我也接触并...
  • guwei4037
  • guwei4037
  • 2016年03月09日 10:53
  • 4636
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:我看所谓“汉语编程”
举报原因:
原因补充:

(最多只允许输入30个字)