中文编程--落后的符号系统

 刘培杰编了一本讲数学故事的书,书名叫“从毕达哥拉斯到怀尔斯”,这本书引述的资料很翔实,书中的大部分故事我以前都看过,但散落在书中对中国科学尤其是中国古代数学落后原因的探讨颇有意思,联想到最近热火朝天的中文编程之争,书中第19章对符号系统的讨论,不无借鉴意义。

先耐心看看书中的内容吧:
近代数学特别之处,是大量使用符号。一套合适的符号绝不仅仅起到速记的作用,他能够精确、深刻地表达某种概念、方法和逻辑关系。算筹只能表示整数与分数,算盘连表示分数都有困难,更不用说无理数了。各种运算只能借助文字叙述。这妨碍了数学的进一步抽象化。

用形式化的数学语言,即以符号形式来表示数学中各种量、量的关系、量的变化以及在量之间进行推导和演算,这是数学发展的重要条件。符号可以帮助建立数的概念,问题的陈述、推理的过程以及定理的证明,运用数学符号可以大大简化和加速思维过程,最典型的例子就是代数学。...由于我国古代数学中,对问题的陈述主要是用文字给出的,没有采用先进的符号方法。

我国古代数学家朱世杰用天、地、人、物表示4个未知数,...如果有5个未知数,就无法安排,推广到n个更不可能了。

...筹算和珠算就显露出它的弱点,而且中国人过于敬祖也是符号改良的一大障碍。
1897年的算学大考题中的两则:
1、今有式 

           天T 三       天
           -------- = ---------, 求天之同数。
              天      天  | 四

   (上面的|是上去掉一点,上式等同于: x / (x-3) = (x+4)/x, 求x)

2. 今有式 二天|三地T人 = 四五
                 三天|三人T地 = 四二
                四地|四人T天 = 五五
   ( 等价于:
 2x + 3y - z = 45
 3x + 3z - y = 42
 4y + 4z - x = 55
 求x,y,z )

进入20世纪以后,官办的京师大学堂内,数学记号仍承旧制,教科书一律竖排,没有阿拉伯数字,更不要说白话文了。
...封建思想对人的束缚,由此可见一斑。李善兰创造的这套记号,有识之士早就认为没有必要,辛亥革命(1911年)之后,终于废弃不用。从1859年《代微积拾级》出版算起,xyzw取代天地人元的过程,前后竟经历了半个世纪之久。


看到上面如同天数的中文数学表达式,您是否看到了汉语、中文编程借尸还魂的影子?
计算机科学本身就是起源于数学,编程语言中大量地使用了数学符号,表达变量的i,j,k,n早已经是约定俗成,表达式的{}+-*/()等数学运算符也大量使用,if else for while class function这一类关键字也已经是符号化了,让全世界的程序员条件反射般地知道其语义。
把这些符号化的东西,还原成汉字,我们的思维反而复杂化了,没办法像数学符号般直观地进行思考。

计算机语言和自然语言的区别,我认为一是计算机语言具有精确性,二是计算机语言形式化。即使将来出现理解自然语言的人工智能,其底层实现也必然是形式化的程序语言,而且,机器对我们自然语言的理解,已经不是计算机程序设计语言的讨论范畴了,google搜索关键字,你完全可以输入一条汉语句子,搜索引擎尽量去理解句子的语义,但你能够说google发明了一种中文编程语言吗?

计算机语言是我们程序员的工具,现代计算机语言呈现百花齐放的势头,每一种新的语言都有其和其他语言不同的特点,有其擅长的范畴;中文编程创新的地方,就是所谓的全中文环境,如前面所述,完全是倒退回一种落后的符号系统,这反而增加了使用者的难度,如此一来,不知道是我们用工具,还是工具用我们?

开发这类工具的机构,在很大程度上打的是民族文化牌,试图以此获得国家的一些资助,如果没有国家经费的支持,让这些所谓的中文编程进入残酷的商业竞争,我估计他们很快将偃旗息鼓。政府对IT产业的资助,基本上是盲人摸象。

科学作为全人类的共同财富,我们再不能走闭关自守,闭门造车的老路了。

评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值