|
|
中文編程論戰
資枓來源:
LinuxAid 專業技術服務网站
中蟒 釋出新版 0-3.14。
主頁: http://chinesepython.cosoft.org.cn
下載: http://cosoft.org.cn/projects/chinesepython
http://sourceforge.net/projects/chinesepython
|
网友:hay | 發表時間:2002-06-11 16:47:04 | | 我不知道其實用性在什么地方,有點納燜!!!!!!! | |
网友:lane | 發表時間:2002-06-11 17:06:43 | | 這真的只能教學用了!
如果中蟒想与其他程序結合.(python/gtk python/qt等)
那中英文混在一起一定很亂. | |
网友:walte | 發表時間:2002-06-12 08:36:34 | | 個人覺得沒有中文化的的必要.難道大家就不能多學一門語言嗎? | |
网友:lark | 發表時間:2002-06-12 10:03:59 | | 沒用 | |
网友:吃飽了? | 發表時間:2002-06-12 10:17:44 | | 不如做點有意義的事。 | |
网友:Scott | 發表時間:2002-06-12 10:19:19 | | 估計還是利用英文的編譯系統,在運行所謂的中蟒程序時先將相應的中文翻譯成英文,再去運行.
哼,脫了褲子放屁=浪費一道手續 | |
网友:hehe | 發表時間:2002-06-12 13:41:17 | | 拜托!不要再做這些不倫不類的東西了。。 | |
网友:glace | 發表時間:2002-06-12 14:23:55 | | 為什么那么多人反對用中文來寫程式 ?
沒用?! 中蟒可是從 Python 移植過來的呀, Python 有什么用那中蟒就有什么用, 怎會沒有呢?
目前中文化是否不做不行, 是不是必要我不敢說, 但也不至于"必不要"吧。 如果你問我 "難道我們不能學多一种語言嗎?", 我就反問一下 "難道我們不能讓電腦多學一种語言嗎?"。教人要教十億次, 教電腦只要教一次呀!
對中蟒的實際運行方式, scott 猜得不完全對。 Python 像 Java, 源碼先要編譯成 Bytecode 后再執行。 中蟒的程序要編譯成 Bytecode 才運行的, 但不需先翻譯回英文的源碼, 因為中蟒本身就是 Python 呀。
如說是浪費了手續, 那我們用 c 不也是先要編譯成組合語言再編成机器碼的嗎 ? 難道這也是浪費手續 ?
我舉三個例子:
1 if x>=0
1 print sqrt(x)
1 else
1 print "invalid input"
2 if x>=0
2 print sqrt(x)
2 else
2 print "負數不能取平方根"
3 如 甲>=0
3 寫 平方根(甲)
3 否則
3 寫 "負數不能取平方根"
好了, 現在你正在告訴我的是第一個例子有實用性, 第二個例子也用實用性(當然有啦,不然國內的linux商不會爭得那么厲害), 但第三個例子就找不到實用价值? 第二個例子就是打造中國人自己的操作系統, 第三個例子就是吃飽了飯撐的? 喂, 講一下道理好不! | |
网友:cLinuxer | 發表時間:2002-06-12 14:33:14 | | 有病啊,開發這种東西 | |
网友:Anti-glace | 發表時間:2002-06-12 14:48:42 | | 非要把x>=0改成甲>=0,中國人從小就沒學過算術?
那得了,阿拉伯數字都別用了,全用漢字,再更人性化一點,我舉第四個例子:
如果甲大于等于零
求甲的平方根
否則顯示“負數不能取平方根”
得,編程,就這么簡單,為了讓一部分不識字的人也會編程,再給他來個語音輸入,那就人性化到家了。
直接對著麥克風說就得了。
重要的問題是:我們有必要讓一個不識字的人幫我們編程嗎?是否他的邏輯思維達到了所有識字人不能達到的极限?就算教學有用,能學編程的對基本的算術式還是理解的吧,就算再初級,也有偽指令幫忙。你看看你們漢化的吧:
3 如 甲>=0
3 寫 平方根(甲)
3 否則
3 寫 "負數不能取平方根"
真的通俗易懂嗎?我看用金山快譯的結果和這挺像。中國的軟件業為什么沒人支持,就是這种浪費糧食的人多了,做些讓人惡心卻不知吐什么的東西。有种別用字母,把漢字全部做在鍵盤上,直觀死你。 | |
网友:Anti-Anti-glace = glace :) | 發表時間:2002-06-12 18:23:01 | | 我覺得第四個例子挺不錯, 如果有語音輸入更是舉雙手贊成! 編程難道不應該就這么簡單嗎?
中國人從小就學算術的全國都是, 但從小就學英文的好像不多吧。
不識字和不識英文完全是兩回事。
"我們有必要讓一個不識字的人幫我們編程嗎?" 的答案看來好像很明顯, 但
"我們有必要讓一個不識英文的人幫我們編程嗎?" 該怎樣回答!
"我們有必要讓一個不識字的人學會編程嗎?" 又該怎樣回答!
听說以前很多程式員反對中文電腦, 他們整天都問 "我們有必要為一個不識英文的人編程嗎?"
現在呢? 是不是又想問 "我們有必要為一個不識字的編程嗎?"
中國軟件為什么沒人支持, 就是因為很多人學會了編程就不可一世。 基本的編程概念說穿了比讀書寫字難不了多少, 為什么那么多人望之郤步, 就是因為要先克服一個語言障礙。
用英文又怎樣, 寫程式也不一定就好。 看看那些什么個人化選項, 小精靈, 用戶設定項, 其實大部分在幫倒忙。 現在是時候把創造力交還給用戶了。 能用中文語言來完成簡單的系統配置, 自動化工序, 這有什么不好的? | |
网友:英語 | 發表時間:2002-06-13 10:32:07 | | 不懂英語,永遠比世界慢一步!你愿意嗎?不愿意?那就別搞那些無用的東西。 | |
网友:liuyicai | 發表時間:2002-06-13 13:05:47 | | 好像在linuxfab.cx上看見過。
在這個問題上,靠市場來說明吧!!
如果這种語言能夠在市場上生存下來,在程序員中得到流傳,那么。。。。
但是一定要注意,要靠市場競爭和選擇!!
如同CPU ISA 完全靠市場選擇,在不同市場中生存下來。
IA与ARM MIPS SPARC PPC 這些ISA在不同的市場中占主要地位。
不明白為什么USA非要搞那么多的ISA??? | |
网友:wolfguy | 發表時間:2002-06-13 19:52:16 | | 程序中的標記只是符號!(至少我認為)
難道要說我們喜歡“方的”就要把“圓的”都改過來!
符號就是符號!記住就是了,何況也不是很多!
有這工夫不如多翻譯几篇help! | |
网友:glace | 發表時間:2002-06-14 14:31:14 | | 不要人云亦云!
"程式中的記號只是符號!"
這句話應該沒完: "程式中的記號只是符號, 其目的為......", 其目的為什么? 就是為了作為人机介面。 以前程式員用机器碼來編程, 的确是符號(簡直是暗號), 也不很多, 大家都記住了。 后來因為實在不方便才有了組合語言, 基本上是和机器碼對應的, <重點>記起來容易些</重點>。 再后來人們開發比較高階的編程語言, 像 a, b, b+ 及至 c。 這些編程語言都有它自己的符號, 其目的在于用一個 <重點>簡單且易明的符號或一組較易理解的句式</重點> 替代一連串常用而繁瑣的机器碼操作。 但這些編程語言用符號和句式都是基于英文的約定。 對于不會英文的人來說在 <注意>某程度上</注意>不算是高階語言, 因為它們并不簡單易明。 對于<立埸>不會英文的初學者</立埸>, 'while', 'for', 'assert' 不具有語意上的喚起作用, 必須透過學習, 或透過死記才行。 把它們變成中文, 何罪之有?
"符號就是符號! 記住就是了, 反正不是很多。"
這大概是順著前面那句來的。 但是有一點沒提出來, 就是這只包括程式中的指令部分(保留字, 關鍵字像 'if', 'else', 'for', 'continue'...), 但忽略了變數名, 函數名, 對象, 對象方法和屬性等。 這些都要算在程式的符號中, 而且占了一大部分百分比! 單用編程語言的保留字就斷言 "程式只是符號,記住就是了反正不很多。" 并不合理。 我認為程式中的符號起碼要分三類, 中文化對三類都有好處,大小不一:
1. 保留字, 編程語言和程式員間的約定, 某個字或字組或句式代表某种操作或某种邏輯結构。 不同的程式語言彼此不盡相同。 如果我做了一套新的語言把 'if' 變成 'suppose', 'else' 變成 'otherwise', 多數人會笑一下, 說是小孩子過家家的玩意。 但是現在把 'if' 變成 '如', 'else' 變成 '否則", 別人看見就會吐?! 一此一彼至斯?
你應該上過音樂課吧, 就用樂譜做個類比。 你看樂譜上有 "cres", "adagio", "piano" 等的小標號, 這些來自意大利文, 指示該段的音樂的特性。 這些不也是符號嗎? 也不很多, 記下來很容易。 其實學過樂理的人都已記下來了。 但你看坊間的唱譜, 照樣在用 "如歌地", "小快板" 什么的。 類比的結果是程式員們并不在意用英文, 但中文化對普及編程有一定的作用。
2. 函數庫, 厂商對程式員間的規定, 也就是 API 和系統常數 。 比如你想要產生一個視窗, 或者調用一個操作系統的功能, 你必須要用該系統所提供的函數。 如果這個函數是 CreateRootWindow_WithCache_Now(....., NOFRAME | ZOOM), 則你別無他法, 只能用這個函數。 這些函數庫通常都碩大無比, 你要死記可真是不行。 如果明白它的字面意思, 大概會記得容易些。 這些譯成中文, "馬上產生主視窗_有快取(....., 無框 | 放大)", 就算拿本參考手冊來找也方便, 難道不好嗎? 你不喜歡的話用回你習慣的英文就是了, <重點> 別人不認得英文, 想用中文的由他去嘛 </重點>, 何必嚷嚷。
3. 使戶自定變數, 函數。 這些才是程式的主体。 Larry Wall 說的, 程式最主要的是資料結构, 給他一個程式, 只要看其資料結构他就可以猜到八九成該程式是用來干什么以至是用何种算法來實現的。 選用恰當的名字能使程式更清楚易明。 這些能用中文有什么不好的? <立埸> 如果你不懂英文 </立埸>, "exam_result", "exam_result_index", "exam_result_sorted", 對你來說不具意義, 只能死記爛背。 用自己的母語, 看程式可以很快就知道其計算重點, 寫程式也可以更方便, 不對嗎?
"有這工夫不如多翻譯几篇 Help."
有哇! 試想如果你的程式都是用中文寫了, 幫助文件還用英文不是很怪嗎? 正因為有了中文編程語言, 說明文件才能更貼題, 也更有創意, 更具針對性。 反而現在這樣, 人家英文寫一篇, 我們就忙著譯譯譯, 譯好了又賣, 賣了又有新的再譯, 才不折不扣永遠慢一步。
如果用前面的說法:
"英文的記號只是符號, 符號就是符號! 記住就是了。"
那還要翻譯 Help 干什么!
如果是老師怎樣教, 咱們怎樣學, 不加思考, 那也算了, 只是不知。 但是如果是斷章取義, 以偏蓋全, 則是在在做錯了!!
中蟒并不是新的語言。 它只是想推廣編程的概念而已。
我沒說過, 也絕對不會說 "程式員們, 放下你們的 J2EE 吧, 最好的已經出現了!"
或 "中蟒太棒了, 你要做程式員嗎? 你非學不可!" 怎麼就那麼多人覺得不舒服 ?
|
|
|