眾網友界定編程語言,JS、SQL和HTML到底算編程語言嗎?
"什麼是編程語言?"我總會問自己這個問題,SQL是嗎?Excel是嗎?HTML是嗎?……這些問題總在困擾著我,所以我把這些疑問整理成問卷的形式,向各位網友徵集了大家的想法。
上圖就是我們這次調研結果,這次調查我們一共設置了三個選項:是、否和棄權,調查對象主要有HackNews和Reddit的讀者組成。
正如我們所預期的那樣,絕大多數人都認同C、Java和JavaScript是編程語言,而其他選項的調查結果就有趣了很多:
Verilog:大多數人同意Verilog(硬體描述語言)是一種編程語言,他們認為即使軟體的輸出是硬體,但生成硬體的過程仍然是程序化的。
SQL:大多數人認為SQL是一個編程語言,但是很多人因為其缺乏完整性而提出了異議,SQL雖然沒有類和循環,但其仍然有算術表達式、函數和變數。
C preprocessor:被調查者對於C preprocessor的興趣明顯要高於正則表達式,C preprocessor本質上是一個字元串替換引擎,它比正則表達式的功能更少,只用於生成C代碼。但是,很多人認為是否被用來生成代碼是判斷是否為編程語言的關鍵因素。
LaTeX:咋一看,這是最接近編程語言的,LaTeX具有變數,函數和許多其他類PL功能(LaTeX是Turing-complete!),但是由於它的輸出是一個文檔,所以我並不看好大家會把它當做是一種編程語言。
但是令人驚訝的是,它就排在C preprocessor之後。
CSS:進入Web語言時代之後,少數的受訪者也把CSS當做是一種編程語言。
TensorFlow:TensorFlow是一種具有變數、循環、編譯器等的數據流語言。然而,因為它是一種特定於領域的語言,而且沒有獨立的語法(它通常通過Python API編程),大多數被調查者並不認為它是一種編程語言。
HTML:可能和CSS的情況一樣。
JSON:JSON是一種數據規範語言,但是大多數人並不把它當做是編程語言。
Microsoft Word:GUIs不可能是編程語言!
Eclipse:看結果,很顯然並不是!
對於上述列舉的大家是否認為其屬於編程語言呢?歡迎在下方留言評論!


TAG:IT168企業級 |