中國為什麼不做編譯器和編程語言?

其實這個問題可以問的更廣泛一些。比如說我不知道中國軟硬體方面的研究者在搞什麼。我個人的編程過程,到現在為止,沒有用到一個基礎性的國人開發的軟體,比如編譯器,集成開發環境和商業化的成熟類庫。我知道國外做這些事情的,也都是公司在做,但是為什麼中國的政府和商人們會完全放棄這個領域?ps.我知道易語言。

我們似乎只會用著別人提供的工具來製造,但是一旦涉及與應用有關的理論,和基礎性工具支持,我們好像就完全是空白。怎麼會這樣?是對別人完全信任?社會分工的必然情形?還是真的技不如人?


  1. 可能是圈子的問題,我見到很多中國人在做這件事 (當然可能很多是玩具級的項目) ,但他們 不善於 / 並不想 宣傳他們在做的語言 / 編譯器 / 解釋器,特別是不想把他們在做的事情宣傳給那些啥都不知道還吵著要「中國的編程語言」的人,這隻會浪費他們的時間。
  2. 為什麼什麼東西都要區分國界呢?很多國際上的開源的編譯器 / 語言項目都有中國人參與,這些人的貢獻就被你們抹除了?為什麼非要覺得需要「純種」的中華民族的編程語言呢,是誰給了你們這麼強的民族主義意識呢?


說點政治不正確的。

雖然中國的軟體行業借著互聯網的東風著實風光了一把,程序猿滿地走。

很多人就忽略了中國在computer science這一塊的薄弱

中國的Computer Science(計算機科學)遠沒有中國的互聯網市場這樣繁榮昌盛,很多方面的確是落後於美國和其他發達國家的,這是一個客觀事實。

而事實上程序設計語言和基礎類庫的構建,除了大把的碼農之外,還需要很多的CS的人才才能有所建樹。

據我所知,中國的這些互聯網公司對上游科研工作也就是計算機科學的支持相當有限,這可能在今後成為中國互聯網發展的瓶頸。


誰說沒有做,一大堆啊。只是知識產權不歸中國的機構的問題(逃


這個問題其實就是答案。

中國的計算機科學科研方面,所有人都在想,為什麼我不能做一個中國的 XXX。結果就是做出一個 China OS,說是自主產權,但是沒有人有理由用這個東西,他比原生 Android 差太多了。

沒有人需要一個「Made-In-China 的替代品」,他們需要新的產品。只是如果這個改革性的新產品是中國人做出的,那麼對中國來說也是一種進步。

不要為了「中國造」而造。


可以做,技術水平也沒問題(@vczh@RednaxelaFX@藍色 等的水平都是有目共睹的),但是沒有必要。編譯器(和其他軟體)不像硬體,有個開源產品就可以了,軟體的複製是沒有成本的,硬體則有。這就是為什麼國內一直在維持 CPU 的獨立製造的能力,不過也不需要很高性能,夠做飛機飛控就行。

還不如留著做其他更值得做的東西(比如硬體啥的)。


君不見我們一個群就十幾個編譯器和語言


我第三次在知乎里推薦這本書:http://smile.amazon.com/Coding-Places-Software-Practice-Technology/dp/0262018071/ref=sr_1_1?ie=UTF8qid=1457072105sr=8-1keywords=coding+places

我知道價格比較貴,但是我相信這個問題是很多中國程序員腦子裡揮之不去的。所以真心希望了解的還是讀一下。

這個問題的角度很多。絕不是一個答案就能解釋的。比如說,我把發展中國家研發基礎技術的「污名化」撿出來說就是一個長答案。但是如果不顧及到其它方面馬上又會有人來噴。


不是有易語言嗎,用來做外掛也挺專業的呀。

編輯器方面還有中國人開發的liteIDE給golang用的。

遊戲引擎有cocos2dx。


事實上中國人有在研發編譯器,例如 XOC, XPOLY, 如果有興趣的話,可以在 github 上搜 stevenknownxoc , 以及 stevenknownxpoly, 前者是阿里研發的編譯器,後者是編譯器中基於多面體模型的的循環變換引擎。


編譯器不難的…

難的是有人用,

並且在很多人用過以後,表示能用。

知乎上那麼多程序員,

關注比我多的程序員數量,

遠遠小於能寫出編譯器的程序員數量。


看標題本來想舉手

一看拿出了易語言手又縮回去了


編譯器和編程軟體都屬於基礎研究,就是無論往裡玩命砸多少錢也看不到任何物質性回報的研究。

所以,國外做這個的基本就兩種——不顧一切自己花時間搞這些的個人,以及專門做基礎研究的研究機構(比如大學)。

我國的科研經費由於各種原因,對於應用科學的傾向遠遠大於基礎科學。所以在這個指揮棒的帶動下,基礎研究非常之少也就是可以預見的了。

當然,編譯器和編程語言都不是沒人會,也不是沒人做。比如有人搞出過一個「易語言」,是純粹用中文寫的編程語言。不管怎麼樣也算是有了。


照你這說法,好像除了美國做編譯器,就沒有其它國家做編譯器了。

成熟的編譯器產商或組織:Intel、MS、GNU等都算美國的吧。

《計算中的上帝》中,呂特外星人很奇怪傑瑞克博士竟然會代表一個物體——地球——歡迎他的來訪。

我也很好奇State會做編譯器嗎?

這不是一個好問題。


鳥哥不是中國人?還是PHP不算編程語言?


商業化的成熟類庫…當年的GiantVision算不算?雖然是輪的TurboVision,雖然老闆後來轉型做今年過年不收禮收禮只收的那個禮了,但好歹也曾經是大珠海的軟體企業標杆之一。


做編譯器和編程語言沒有什麼技術門檻,不過既沒有應用場景,而且要在功能和性能上PK過現有的主流編譯器還需要很多時間去打磨。

簡單說就是吃力不討好。


因為開源軟體本身就不分國界,沒有必要造一個從頭到尾都是國產的出來


因為計算機基礎理論和編譯器基礎理論起步和發展的時候,我們在忙著鬥地主。

等我們不忙著鬥地主了,這些基礎的東西都比較成熟了,也形成產業鏈了。

市場份額很難撼動。

除非再來一場計算機IT界的法國大革命。


第一,中國有自己的編譯器和語言,但是都比較小眾,不太出名。這東西順其自然就好,說不定哪天抓到一個風口,中國某個領域的編譯器和語言風靡世界也未可知。第二,編程世界並不存在所謂的政治正確。有xcode,不是你中國一定要有一個cxcode,有了Android Studio,沒必要再出個China Android Studio。有java沒必要你非要來個China Java。


發明一種語言其實很容易,但是讓你發明的語言有人願意用就不容易了。

所以不可能是沒有人做,更加可能是沒有搞成功

比如國內有公司搞過自己的計算框架,但是競爭不過hadoop只能放棄


推薦閱讀:

除了OmniFocus,還有什麼軟體是非常有用,但是沒有windows版本的?
在喜馬拉雅FM工作怎麼樣?
熟悉 Vi / Vim 的哪些命令和配置後可以拋棄 IDE?
做不出OJ上的題,應該怎麼辦?

TAG:軟體 | 程序員 | 編程語言 | 學術 | 編譯器 |