国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
也談“漢語編程”
English
主頁 |培訓
也談“漢語編程”
我們從事編程語言的研發(fā)已經有十多年了。Fuxi語言原來叫“龍井”,起“龍井”這個名字的用意是不言而喻的。作為一個從實踐中發(fā)展起來的語言,走過了一段和其它實用語言相似的發(fā)展道路,就是從“腳本語言”—>“解釋語言”—>“編譯語言”。
前幾年,在“高交會”上展出的時候,就有人和我談起過“漢語編程”的問題。老實說,作為一個弱小的軟件企業(yè)開發(fā)的一個目前功能尚不強大的編程語言,打一打民族牌是有好處的。但Fuxi語言最終沒有走上所謂的“漢語編程”的道路,打開fuxi.org的網站,一進來卻是英文的,“Fuxi”原本應寫成“伏羲”,卻用拼音形式代替,這似乎有些滑稽。
這里我想和大家分享一下編程語言設計和實現的感受,兼談一下“漢語編程”的問題。
任何一位語言的設計者都不得不回答一個問題:“Why a new language?”。語言的設計體現著設計者的軟件理想、編程理念,是對計算機科學最直白的表述。語言學家指出,“Language models thinking”,有人把這句話翻譯成“語言決定思維”,我覺得太過了,但我又找不到合適的中文詞匯來。那么一個編程語言到底要去建立一個什么樣的編程思維呢?
著名的計算機科學家E. Dijkstra指出,“程序設計的藝術是管理復雜性的藝術”。其實,計算機語言發(fā)展的歷史,正是滿足日益增長的系統復雜性要求的歷史。主流語言的發(fā)展主要經歷以下幾個階段:
算法語言 --> 結構化語言 --> 面向對象 --> 面向方面 --> ……
在不同的階段,語言設計的理念不同,側重點不同,但有一點是共同的,就是每個語言的設計者都努力地“make programming an enjoyable thing”。現如今,軟件環(huán)境已經變得異常復雜了,從每秒萬億次的超級計算機到拿在手上的PDA、智能手機;互聯網(泛聯網也許更恰當些)又使得這些東東聯到了一起。我們所設計的語言何以“讓程序設計成為一件令人愉快的事”呢?(這里我不贅述Fuxi語言的設計思想。)
這就要求語言的設計者必須深入到這些技術的底層,研究其背后的科學原理,找出滿足新技術要求的計算模型。程序設計的本質就是,在計算機中建立外部世界的模型。因此,簡化程序設計、降低程序設計的門檻的根本途徑是,提高語言的抽象性,增強語言的建模能力,減小語言構件與外部世界之間的“語義鴻溝”,而不是語言的構件是采用漢語還是英語的編碼形式問題。
不管你對計算機科學的理解如何,有一點是肯定的,“讓程序設計成為一件令人愉快的事”絕不是把一種語言中的一組符號映射到另外一組符號的問題(這種映射理論上稱同構,其實還是同一種語言)。
從語言技術的層面上看,對傳統過程性語言采用逐詞替代的編碼轉譯的所謂“漢語編程”,不可能“降低程序設計的門檻”(如果該程序有用的話),解決所謂“中國程序員稀缺的問題”。(稀缺嗎?怎么來我這里面試的人總比錄用的人多?)
再說,象JAVA、C#,當然也包括Fuxi這樣的以Unicode為字符內碼的語言,完全支持中文注釋、函數名、變量名(Fuxi的用戶好象并不喜歡使用中文函數名)。我不相信,在那些滿嘴洋文的年輕80后的眼里,那幾個英文關鍵字會那么礙眼!
1966年,首屆圖靈獎得主A. Perlis在其圖靈獎演講中提到,Fortran語言是我們計算機界的Lingua Franca (瑞士街頭妓女中流行的一種由英文、法文、德文、意大利文等混雜的語言),它使得不同國別、不同民族、不同膚色的人坐到一起進行交流。計算機科學是沒有國界的。如果美國人編程用英語、法國人用法語、俄國人用俄語...,我們很難想象現在的計算機會是什么樣子。
程序設計語言是一種用來描述計算的符號系統,是一種人和計算機都能讀懂的符號體系。前些年,一位網友發(fā)來一段程序,沒有注釋。他在郵件中說,“I think we’re all better at C++ than English”,讀后莞爾。現在有人提出所謂“漢語編程”,我不禁要問,連街頭的妓女都知道用一種通用的語言來交流,而況我們這些受過教育的程序員呢?
由于多年的計算機教育,Pascal、C所采用的的符號體系已經成為全世界計算機工作者的一種約定俗成的符號系統,已經成為計算機文化的成分,程序設計美學的要素。在這種計算機文化的背景下,語言的設計其實就是計算模型的設計。已經不再有人會去接受一種另類的文本符號系統了,即使你的符號系統更美、更科學。
一種思想、學術、語言必須能夠融入主流文化才能獲得生存空間,否則就會被視為異端、邪說,是對主流文化正統性的冒犯。
漢語和西語存在著重大的差別。從語言學的角度來說,漢語屬于獨立語,西語為屈折語。一個人沒有文化,用漢語表達叫“不識字”,而在西語中則稱“不懂文法”,英國的小學也稱“Grammar school”。固然,漢語有著眾多的優(yōu)勢,用漢語可以輕松地讀出一長串的數字,孩子們都可以進行很大的數值計算。而我和朋友們一起打牌,美國人卻最怕算分。
中文的簡潔讓我們在進行數值計算時承擔了最小的心理負擔,同時文法機制的缺失又使我們的先人錯過了發(fā)展代數演算的機會。祖沖之的圓周律領先西方800年,楊輝三角領先 Pascal 500年。但中國古代的數學始終停留在“算術”水平上,沒有能夠走出有理數的范疇。中國古代的眾多發(fā)明始終沒有能夠孕育出科學文明,而被分散地歸納在《經》、《史》、《子》、《集》之中。憾哉!這主要是“Language models thinking”的緣故。
從本質上說,編程語言和代數演算同屬于形式語言系統,是建立在文法推導的基礎上的。從語言學的角度來看,西語的文法結構更有利于描述計算(數值計算是機器自動實現的)。
中華民族是一個偉大的民族,中華文明的精神就在于“海納百川,有容乃大”。在我們民族鼎盛的時期,也是大量吸收外來文化的時期。這些“泊來品”融入到我們的文化當中,成為中國文化的一部分,有的甚至成了我們的國粹,如琵琶等。
在互聯網使得地球成為一個村莊,經濟全球化使得世界變成“平的”的今天,落后了100年的中國更應當以一種寬廣的胸懷,虛心的態(tài)度向西方先進文化學習,并把其中的精華融進我們的文化當中。如果要把用什么“語”來編程同“民族”、“愛國”等敏感詞匯聯系到一起的話,那就似乎有些荒唐了!
作為一種軟件產品,讓那些退了休的老大爺、老大媽們也體驗一下編程;找賣點,打打民族牌,是可以理解的,無可厚非的。但是,把手伸向中小學教育,把一個編程理念沒有什么建樹、和正統計算機文化相抵觸的編程語言推給孩子,我認為是不可容忍的,是犯罪!正如前述,“Language models thinking”,這樣會妨礙他們對正統計算機文化的認同與接受。教育要“面向世界、面向未來、面向現代化”!為了“奧運”,北京街道上的老大媽都在學英語,為什么我們的孩子在接受IT教育時,就不能多記幾個英文詞匯呢!
本站僅提供存儲服務,所有內容均由用戶發(fā)布,如發(fā)現有害或侵權內容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
什么時候我們才會有自己的編程語言?
沒有英語基礎可以學編程嗎?
所有的計算機語言中,哪一個精通的價值最寶貴?
1.1.1 概述
自學的c語言有完整版的嗎?
易語言 下載V4.10 綠色精簡版(5.44M)
更多類似文章 >>
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯系客服!

聯系客服