如果世界上只剩下五種編程語言,你希望是哪五個?為什麼?

只是一個假想實驗。

補:

感謝@貓爹 的補充,完善了這個非常開放性的提問。

題設可以想像的空間是如此之大,問題也是如此的開放。可能需要一些限制才能妥善回答限制後的問題,可能題主的本意是假設由於不可抗力,只能保留五種編程語言,保留哪五種語言對現有生產力的傷害最小?

這個問題最初是我和男盆友放假在家看電影的時候腦洞大開隨意聊到的。我們最後一致同意的結果是,Verilog, C, Javascript, Clojure, Haskell. 這個結果本身對我們倆來說其實毫無意義,因為這個世界不可能只剩下五種語言,但在那半個小時的討論中我倆過了一遍很多語言的優劣勢,所解決的問題,etc,還是很好玩的。@Milo Yip 說的是對的,不過這個回答和這個本身就是假想實驗的題目確實什麼關係都沒有。大家要是覺得,咦,換這個角度想想還蠻好玩的,那就想想唄。各位要是覺得「是什麼也沒所謂了」,那就散了唄。


廣大程序員們
這絕對是一個想讓大家撕逼的問題
大家不要上當啊


有編程語言就可以寫出新的編程語言,所以問題不成立。若讓問題成立,則這五種語言無法實現新語言,這尼瑪還能用?


Scheme, Scheme, Scheme 和 Common Lisp 和 ML


PHP C Java JavaScript 彙編


ada basic c d erlang嗯,剛好abcd


不管剩幾種還不是跟著大牛們的屁股走


自然語言。


是什麼也沒所謂了,屆時失去了選擇的自由、創新的熱情,科技只會停滯不前。


題設可以想像的空間是如此之大,問題也是如此的開放。可能需要一些限制才能妥善回答限制後的問題,可能題主的本意是假設由於不可抗力,只能保留五種編程語言,保留哪五種語言對現有生產力的傷害最小?


這種情況自然是要選擇最適合重構新語言的語言,那麼和指令集架構結合最緊密的C是必然要保留的。由於antlr是如此的好用,我們可能還要保留一個java的運行時。高等腳本語言可以在python和ruby中間選一個,個人覺得ruby會更好用。有了這三個語法概念上的語言和兩個運行時,相信短時間內重建任何語言都比較方便,其實只要antlr或許就足夠,不過考慮到重建大型語語言或vm的工程複雜度,c和一個腳本語言還是很有必要的。


我猜應該會剩下

  • C、
  • Lisp、
  • Shell、
  • Perl、
  • Java。

然後會有程序員給Lisp的靈魂披上C的外衣,注入Shell的血液,加入Perl的靈活,再加點Java的面向對象。於是,又創造出了第6個語言——世界上最好語言——PHP


最極致的編程語言就是沒有編程語言,省的有人閑的蛋疼提出和回答這種毫無意義的問題,比如我。。


機器碼 機器碼 機器碼 機器碼 機器碼 over~


@Milo Yip 說的其實是對的
不過如果真正來回答題主的問題的話

因為在不同領域推薦不同 個人在應用領域略熟悉一點
所以個人認為在現階段應用領域是 c#

在應用領域程序員要解決的是程序結構設計和邏輯領域處理 如果一個語言需要過多的被學習才能解決一個問題 那真的就太荒唐可笑了
-----------------------------------------------
這裡說一下 那些學習java的神們 請別總拿跨平台說事可以嗎 你們真知道什麼是跨平台嗎 你們可知道那個天天被你們罵的c#才是真正的跨平台嗎


  1. Lisp 靈活的動態語言, 用於編寫各種上層或者Web應用以及腳本.
  2. C++ 通用的系統級語言, 解決所有的軟體底層問題, 包括操作系統/網路/嵌入式的底層.
  3. SML 靜態類型+類型推斷的語言, 可以用於語言設計/形式證明.
  4. Java 通用的跨平台應用級量產語言, 構建系統層面(C++層)上的各種應用, 完成對系統層的抽象.
  5. VHDL/Verilog 硬體描述語言, 處理硬體設計問題.

大家別上當


C++,C++,C++,C++,C++。


  1. 機器語言/彙編
  2. shell
  3. C/C++
  4. Java (OO要有)
  5. python (腳本語言要有一個)
  6. JS (瀏覽器前台無法割捨)

目前的情況來看最少要這6種,少了哪一種世界都不美好啊。


你太小看程序員了!就算你把語言搞成010101,把鍵盤滑鼠全乾掉,不出一個月,他們能從紙帶幫你重建世界!


彙編
C/C++
java
python
js

總之覆蓋了基本所有需求 0 0
(其實既然有了C為什麼不另寫語言呢。。


退知乎,刪回答,保智商。


推薦閱讀:

對於現在的開發者來說,數據結構和演算法是否依然重要?
有哪些優秀的演算法題?
ACMer 或者 OIer 怎麼轉型開發呢?
VLOOKUP 到底有多重要?
脫單有沒有類似數學公式或者編程之類的東西?

TAG:互聯網 | 編程語言 | 編程 | 計算機科學 |