如何評價三年前四大系統編程語言大牛的那場談論?

時隔三年如何評論?有無乾貨,有無打臉?

Systems Programming in 2014 and Beyondhttps:

https://channel9.msdn.com/Events/Lang-NEXT/Lang-NEXT-2014/Panel-Systems-Programming-Languages-in-2014-and-Beyond

Panel: Systems Programming in 2014 and Beyond
5月 19, 2014 at 11:19上午 作者:Charles Torre、Bjarne Stroustrup、Andrei Alexandrescu、Rob Pike、Niko Matsakis


以前用 Rust 做過一個小網站。語法方面感覺還好,就是「借」來借去,不知道借到哪裡去了。還有就是,Rust 似乎要求程序員,邏輯上要比 C++ 更縝密,表達上要比 Ruby 更抽象更簡練。把門檻抬得有點高了。如果像 JavaScript,Python,亂拼亂湊,用 Rust 會寫不下去。

但個人還是很看好 Rust 的前途的。關注和開發 Rust 的,是一群 C++ 的高手,是一群熱衷學術,文化程度很高的極客。

無論什麼語言,最後都是對 CPU 發送指令,熟諳底層硬體邏輯的 C++ 戰鬥隊,加上一堆熱衷 Paper 深諳理論的指路,做出來的東西,可能一段時間內難以市場化,但從長遠來看,一旦根基穩固,一旦成功,Rust 會給編程語言帶來翻天覆地的變化。會像Scala,Kotlin,CoffeeScript,Sass,TypeScript 一樣,能衍生一些降低開發難度,模板化的語言。


不是老的不想退,是新的武功太差,達不到接替的要求。系統,底層也只有rust上檯面。希望武林各大派鼎力支持rust。在我來看,rust猶如張無忌,雖然年少,卻是給做底層的各大派實實在在的希望。


已經好幾個回答了,似乎都在評價那幾個語言怎麼樣。

但是題主的標題是 「 如何評價三年前四大系統編程語言大牛的那場談論?」

所以重心應該是對「那場談論」的看法。

視頻以前看過,實話說我覺得雖然去的都是牛人但是「三年前四大系統編程語言大牛的那場談論」並未有什麼太多乾貨。

這幾個人都是圈子裡的名人,在視頻里談論時都很客氣,也就是泛泛談談而已。

我就掛一漏萬的說幾個還留下點印象的吧,算是拋磚引玉。

1. 幾個人都同意system language定義現在似乎沒有特別嚴謹和一致的定義,

忘記是 BS 還是 Andrei 還提到wiki上的system language定義成驅動之類的開發似乎太窄了。

2. Rob Pike 提到他們最早宣傳golang為system language,導致很多人以為golang是寫OS的,他感到為此很抱歉,他們現在(即2014年那次討論會的時間點)golang所謂system language他們認為指的是Cloud開發。

3. 記視頻里提到FB 升級代碼很頻繁,記不清andrei說的是兩周升級一次代碼還是一周升級兩次了。

4. 在相互介紹發言時,BS說Rob Pike 是一個物理學家,BS, Rob Pike,Andrei 他們三個應該還是比較熟。 rust的設計者之一Nicholas作為晚輩,似乎都不太了解他。

5. 都對C++編譯速度問題不滿意,BS也坦率承認這是問題並說會致力於解決這方面的問題。

6. Andrei 還幽默的向Nicholas指出rust的編譯速度也不行,Nicholas說他們現在(即2014年開會時)還沒在這方面花費精力。PS,2016年rust開始搞增量式編譯。

7. Rob pike 對golang的閃電般的編譯速度引以為傲。還講語言的很多問題可以通過開發語言的相關工具解決,講了一個google內部用glang ast 解決問題的的case。

8. 視頻里,好幾次提到Java/C# 當作負面例子。

對此,我也是有點醉了。。。。

9. 四個人的印象是,BS比較坦率,Andrei最幽默活潑,Rob Pike 不苟言笑,Nicholas有點靦腆。

如果沒看過視頻,又想看點乾貨的,其實我不推薦去看;

如果就是想看看高人扯扯蛋,那麼沒事時可以看看玩。

最後關於語言,其實我個人倒是希望 出現新語言

(根據評論,我感覺寫的可能容易誤會,下面部分調整了一下文字)

第一個新語言:類似於 rust + golang。

這門新的語言借鑒把rust所有權和生命周期相關部分刪除後剩下的語法,做成一個有gc的靜態強類型編譯為原生程序的新語言,工程品質和golang相當。

原因:對於普通程序開發golang的定為很好,但是我個人感覺golang語言的語法真是有點太簡化了。

第二個新語言:類似於 erlang + java

複雜堆業務的伺服器端開發,期望有一個actor風格靜態強類型基於虛擬機的新語言。

原因:複雜業務下,actor風格比較自然利於理解程序的運行時候的業務結構,靜態強類型保證多人合作利於維護,虛擬機保證了設計者更多的設計上的可控性,不受制約原生平台,可以做出比原生程序多出更多的可能。


沒事過來逛逛,看大家爭的面紅耳赤的。

提問者就是個腹黑,提這種問題就是想看大家撕逼的。

語言只是開發工具,沒有好壞之分,有優點,有缺點,相互之間是互補概念,不是非要爭個高下。

真該爭高下的應該是使用工具的人,有些人給他再好的語言他也能寫出屎一樣的代碼。

==============

最後,我是寫golang的,但是骨子裡是最崇尚C/C++的,覺得遠古時代的C/C++才是一切思想的源泉。


摘自我的豆瓣

2017/06/05 編輯:

  • D 語言:想看編譯器和運行時的 bug 嗎?
  • Rust:屎一樣的語法
  • Go:退休返聘人員設計的語言,落後時代不是一丁點
  • C++:標準庫一坨屎,天坑+歷史包袱,被各懷鬼胎的官僚委員會把持

竟然有人懷疑 Rust 的語法不是一坨屎:

誰來說說上面這堆鬼畫符是什麼玩意兒?

延伸閱讀:

噴 D 語言的長文:為嘛 D 是現在這樣


我同意這句話:

C, Assembly and Node.js are the only systems languages we need in our lives.


推薦閱讀:

Go與Python ?
Golang 在國內是否過譽了?
如何看待許式偉談Go Erlang並發編程差異?
Go語言的核心特性有那些?
Go語言在Linux中後台運行的問題?

TAG:編程語言 | 計算機科學 | C | Go語言 | Rust編程語言 |