西西河

主题:【讨论】龙芯什么时候能配上中文计算机语言编译的源程序? -- 唵啊吽

共:💬151 🌺373 🌵4
全看树展主题 · 分页首页 上页
/ 11
下页 末页
家园 缺钙说法有点道理,但是...

我对缺钙的理解是原创性,而不是非要把基础的操作系统、编程语言、编译系统再去做一遍。我欣赏苹果在一片贬低声中把iPhone做了出来,人家也没重头做一套操作系统、编程语言之类的。FreeBSD、GCC拿过来改造就是了。

另一方面,像工控方面的软件、行业软件,人家肯定不会给你的,哪怕模仿着做出来,不断改进性能和指标。虽然看上去没有什么新东西,那也是原创。

总之,别人没有的、人家不给你的,你能顶住压力和风险做出来,就是有骨气,不缺钙。

家园 简化字有助于提高中国人的文化水平么?

对这个问题我认为是当然有。

对于语言高手来说,什么文字,其实不重要,甚至越复杂越好,因为这样可以形成门槛,从而形成自己的一个利益圈子,这是从“研究者角度”考虑,但对于普通人来说,简化字就很重要,这是从“应用普及角度考虑”。所以,中国如果真的要大幅度提高中国人的“普遍编程水平”,中文化必不可少,而基础的踏实,可以给顶层提供更好的基础,也提出了更高的要求,从而确实促进最终研究水平的提高。

家园 不是说重做一遍,而是要有骨气

敢于去争先,而不是乖乖等在别人后面,跟着人家,甚至绞尽脑汁去破解——这个时间花在原创,估计也够了。

家园 你没有回答我的问题

把数学符号都改为汉字能够提高中国人的数学水平么?

自然语言与计算机语言没有什么可比性。

家园 楼上已经回答:当然了

但提高的是普及的基础水平,也就是国民整体的平均数学水平,而不是指前沿研究方面的水平。

家园 转发个好玩的:“跳槽误入一家用汉字编写C#代码的公司”

[URL=http://topic.csdn.net/u/20120203/11/020CC783-B9AC-4674-AB2E-A646770205BE.html

]跳槽误入一家用汉字编写C#代码的公司,望各位大师指点~[/URL]

最近CSDN上很火的一个帖子,里面可以看到国内程序员对中文编程的一些观点。

遍历器<登录信息>.计数遍历(_详细信息集合).从(0).到(_详细信息集合.长度()).每隔(1).执行((当前行索引, 登陆信息) =>

{

判断.如果是(XXX).则(() =>

{

判断.如果是(YYY).则(() =>

{

表格.行(当前行索引).背景色设为(Color.Gray);

});

}).否则(() =>

{

判断.如果是(ZZZ).则(() =>

{

判断.如果是(KKK).则(() =>

{

表格.行(当前行索引).背景色设为(Color.Gray);

});

});

});

});

关键词(Tags): #C##中文编程
家园 阁下不要没有调查就乱发议论

至少我知道的,有个软件叫按键精灵,就已经实现了很强的脚本功能。软件商店里买的各种游戏挂机脚本生意很好。目前已经有条件实现辨认验证码。

所谓计算机语言的中文化,目前看来更像是英文语言的外壳而已。在我看来没什么意思。或者说如果没有编译器,只是把中文代码翻译成英文代码,再用以前的编译器编译,那中文代码可以说毫无意义。

家园 这个不全面,要把正则表达式和数学符号也都中文化

才能满足某些偏执狂的愿望:

若(甲 大于 乙)

输出("格式:浮点数", 丙);

整数 阶乘(整数 值)

{

若(值 正好等于 1)返回 1;

否则 返回 值 乘 阶乘(值 减 1);

}

家园 符号而已,与语言无关

编程语言就是编程语言,无论他使用既有的汉字字符、英文字符,或者发明一种新字符去编写。语言只是用来表达思想,而计算机若想识别这些东西是需要通过编译器转化成01的,所以无论什么语言最终都是01.这样的好处是在学习、编写程序的时候有助于小学生(国人)理解,现在用拼音或者易语言都可以。但这只是一个入门,将来真要做软件,还是要用现在流行的c等。英文的循环用while就行,5个字母,汉字循环要输入xunhuan,7个字母。英语融入汉语之中,但是不会代替汉语,他会作为标识的符号存在,比如火车的车次,通道A、B等。简单的编程大部分人都能学会,无论使用哪种编程语言语言,哪种表示符号,既有的编程语言都是靠变量、函数等模型。与其用汉字这种符号去编程,不如中国人改造根本的模型。甚至电脑的构架。与其小学就学编程不如好好学学数学。数学强的国家,黑客也不次,比如俄罗斯。

家园 不知道您到底想说什么

最好把不同意的地方指出来,看不出您的评论和我的原文有什么矛盾。

家园 中文(汉字)还是比较特殊的,那就是她是表意文字

当今世界大规模使用的表意文字估计只有中文了(按现在的说法,是音形义的高度统一)。而偏偏对中文的这个特性目前研究非常不够,至少在计算机科学领域是如此。

可以说,目前的计算机语言理论和实现里面也完全没有考虑到中文的这个特点,只考虑到了表音语言。(其实这句话也不是很正确,C++教主前几年发表过一篇文章,谈到在C++中扩充标识符字符集的问题,比如可以加入一个小人符号,笑脸符号,电话符号等等,这样“人打电话”这样的语句,就可以用“小人.电话”或“小人->电话”来表示。这篇文章我是在《程序员》杂志上看到的,当时的感觉还是很震惊的,还好又仔细看了一遍,才发现原文是4月1号发表的。)

当然也可以反过来问,表意符号的表意部分到底能不能有效编译成计算机程序,或者“编译”的可不可以改成“理解”?

下面是一些个人的感想

----------------------------

俺的理解是,作为表意文字,使得古代汉语天然排斥纯粹的符号,比如字母和标点符号(除了空格以及由空格演变成的“O”)。就连两仪、三才、五行、八卦、十天干、十二地支之类更适合用符号表达的东西也要配上汉字作为名字。

汉语的这个特点可能是极其重要的。按《中国古代的语言和逻辑》(Chad Hansen)的观点,表音语言天然需要“抽象”,也即类似柏拉图“理念世界”里的“理念”,“理念”代表语言的实际意义,比如horse(或其他字母组合)必须对应到马的理念,否则没意义。西方哲学很大程度上都是建立在这个基础上。(还有一个例子就是集合论,“集合”几乎就是“概念”的数学版本,也即现代数学也可以说建立在柏拉图的思想基础上,这点有好几个著名数学家都表示过类似说法。那么其实现在的计算机科学也是建立在柏拉图的思想基础上的,因此编译过程对汉字不友好似乎是应该的);而汉字似乎天然不需要“抽象”,汉字“马”(尤其是象形文字的马)本身就可以表示马的意义,而不需要抽象出一个马的“概念”,这似乎也是“白马非马”之类汉语悖论的根源,现在那种使用“概念”“外延”“内涵”来解决这个问题的想法有点像当然了(从某种意义上说,全体汉字就相当于柏拉图的那个永恒、不变、完美的“理念世界”,怪不得说“仓颉造字鬼神惊”)。

在目前关于汉语本身的特点还搞不清楚的情况下(很多人还是认为拼音化或者线性化才是汉语唯一出路),真正意义上的“汉语编程”,到目前为止几乎没有任何理论上的突破,如果真的“拼音化”了,也许就永远不会出现了。


本帖一共被 1 帖 引用 (帖内工具实现)
家园 不觉得会英文对学编程有什么帮助。

这就好像说用繁体字就能看懂古代文献一样。

就拿C#来讲。

public partial class xxx

private static readonly double xxx

protected override void xxx

这三句里面的东西是C#编程最常用的,会英语对于理解这三句语句的唯一帮助就是那个readonly。虽然这些词讲英语的都会懂,但它们在编程语言中起什么作用可不是会英语就能知道的,还需要专门的学习。要说学英语的好处,最多也就在使用api的时候少查书。比如KinectSensor.AudioSource.BeamAngleChanged

会英语的话不需要查手册就能明白这是干吗用的。

我这里举得还是接近人类思维的编程语言。那些比较古怪的比如Perl Lisp跟英语可以说没什么关系,就是借用了英语的字母。

家园 如果你把关键字都看成助记符,会英文当然有帮助

这些助记符本来就是给人看的,对机器来说无所谓,当然用自己懂的语言写更顺一些。

家园 汉语的确一定程度表意,

汉语的确一定程度表意,但即便是繁体字或者更早的甲骨文,如果让一个完全不懂汉语的人去识别也是困难的。汉语本身能表达什么意思?从“横竖撇捺”的角度来说,什么都不表达;如果说以偏旁部首为单位,那就可以表达一点意思了。比如“鸣”计算机要想理解这个字,必须分解出它的偏旁。象形文字本身也在演化,甲骨文、繁体到简体,词语、成语变化得更大。英语以字母为单位什么都不表达,但若以词根为单位,把blackboard分解成black和board。这样就能看出点意思来。

假如计算机不用“编译”,直接“理解”汉语,那么就是人工智能。而即使是人工智能,他也是一个编译器。编译是把计算机高级语言所表达的人类思想转化为二进制。所谓的“理解”就是把,人类语言(或者是汉语)转化为二进制。而在理解的过程中,包含人类语言识别,并且还包含了识别后的编译功能。

计算机若想直接理解汉语,除非他硬件上固化人工智能的模块,若他的没有这个模块,那么任何语言依然要一套智能软件程序去转化成计算机能懂的01。

家园 汉字的表意不只是体现在象形

传统的汉字造字即六书“象形、指事、会意、形声、转注、假借”,基本都是属于语义范畴,而表音文字的前后缀等基本属于语法的范畴。

比如鲁迅造的形声字“猹”,可以理解为:一种叫做“查”的“野兽”,这个单从笔画是根本看不出来的(而且象“日”和“曰”,笔画完全相同但意义完全不同),可见笔画在汉字中并没有一个很基础的地位。而英文的blackboard和black board几乎没什么不同,也就是说这样的单词其实就是个短语(再比如state-of-art),这样的构造方式很容易造成单词过长,所以英语常见构造新词(名词)的方式是缩写和用造一个完全新的单词,不管哪种方式,新造的词很难直接看出和意义有什么关系。

俺觉得现在的“编译”也是“理解”的一种,只不过是要求用一种要求高度形式化的语法而已,而语义是隐含在这种语法中的。应该存在这样的编程方式:即直接在语义级别上或很接近语义的级别上编程,比如IP,只有从这个角度来看作为表意文字的汉语编程才有实际意义,否则根本就是以己之短攻敌之所长。


本帖一共被 1 帖 引用 (帖内工具实现)
全看树展主题 · 分页首页 上页
/ 11
下页 末页


有趣有益,互惠互利;开阔视野,博采众长。
虚拟的网络,真实的人。天南地北客,相逢皆朋友

Copyright © cchere 西西河