【IT168 评论】"什么是编程语言?"我总会问自己这个问题,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:看结果,很显然并不是!
对于上述列举的大家是否认为其属于编程语言呢?欢迎在下方留言评论!