什么是编程语言?

可能重复:
什么是计算机编程语言?

不完全是。

我努力想出一个非常好的定义。 这是我的直到现在:

编程语言是一种forms语言,包含语法。 语法规则用于形成语句。 编程语言被用于创build计算机可以理解的一组指令。 语法语句的集合称为程序。

我知道它读得不好,所以在这里有一些帮助是很好的。

这里是维基百科 关于这个主题 第一段:

编程语言是一种人造语言,被devise用于expression可以由机器,特别是计算机执行的计算。 编程语言可以用来创build程序来控制机器的行为,精确地expressionalgorithm,或者作为人类交stream的一种模式。

我认为这是人生中的一件事情,人人都知道它是什么,但是这个定义很难定义。

我是一个人吗? 你的想法?

我想,维基百科有这个非常正确的:

A programming language is an artificial language designed to express computations that can be performed by a machine, particularly a computer. 

第一句话足以描述它是什么:

  • 它是一种人造语言(这是它的根源)
  • 它旨在expression可以由机器执行的计算(即语言的目标/目的)

这是一种编程语言在其最一般的定义。

你的定义缺乏这种一般性(例如,你的句子适合于面向命令的语言,而不适用于例如逻辑编程)。

编程语言是向特定angular色expression命令和命令的方式。

编程语言由符号和一套规则组成,无论是明示的还是暗示的,这样任何执行程序的执行者都不会违反规则。

我不同意这种编程语言

  • 与计算有关的任何事情 – 请参阅徽标
  • 与电脑有关的任何事情 – 请参阅任何食谱
  • 与人类有关的任何东西都可以作为程序的源代码 – 参见编译器可以得到程序集
  • 只是一种编码/解码信息的方式 – 有很多东西可以做同样的事情,但他们不是PA

它是一种软件(计算机程序)彼此交互的方式。 它与人类的交互界面与计算机相互作用。

我喜欢的定义:)

编程语言是指导计算机的专用词汇:编写计算机程序的唯一词汇和一套规则

编程语言是一种forms化的人工语言, 具有自己的语法 。 语法规则用于形成语句。 编程语言被用于创build计算机可以理解的一组指令。 语法语句的集合称为程序。 这些语句是从人类可读的格式(在运行时或通过编译)转换为机器特定的格式

高级语言被发明出来,所以你不必乱用配线架和电线了。 把它们想象成硬件和人类指导者之间的抽象层次。

我使用术语“高级语言”来描述使用parsing器,抽象语法树和代码生成器将其结构翻译成“低级”机器指令的术语。

我故意做了“关卡”复数,因为现在我们和硬件之间的抽象关系越来越多了:networking堆栈,操作系统,应用程序服务器,浏览器等等。

编程语言是一组符号,由forms语法定义,可以被程序翻译成计算机可以理解的另一组符号,以便最后执行一些所需的动作。

编程语言是一种expression计算的方式

  • 恰恰
  • 在高层
  • 在某种程度上,我们可以推理他们

第一个要求是意图:编程语言是用于计算机编程的语言。 请注意,这不是一个同义反复; 回想一下,通过手工设置位来编写计算机是可能的。无论如何,编程语言的所有其他属性都遵循它的意图。

我认为一个“真正的”编程语言应该是图灵完备的。 这不包括像HTML这样的东西,它直接使用计算机,被称为语言,但不是编程语言。

任何分类,你会得到边界的情况下, 例如,APL没有以math符号开始? 不过,我认为,回归意图会使你尽可能地接近你:对于那些边界案例,无论如何,有趣的问题与分类无关。

编辑:所以,作为一个格言,那么:

编程语言是打算或用于编程计算机的语言。

一个真正的编程语言也是图灵完备的。

描述stream程/algorithm的正式语言。

我在笔记本上写下了这个,以清除我对“编程语言”的想法。 我喜欢它,所以search它的答案。 “什么是编程语言?” 我在这里提供这个,以便其他人可以从中受益。

“编程语言”是一种专门devise的人造语言,您可以在其中给计算机指令。 因此可以称之为“指令语言”,程序员使用它来指示计算机做事情。

编程人员用来向计算机发出指令的编程语言(如C,Java,Python或Lisp)带有一个名为“解释器”或“编译器”的附带软件程序(甚至包括它们)语言。 因此它理解程序员在这种编程语言中给出的指令。

这个软件程序也理解特殊的“机器语言”,这是电脑机器唯一可以理解的语言。 也就是说,计算机不能理解除了特殊的“机器语言”以外的任何其他语言的指令。 (不同的计算机有自己特殊的机器语言,这是他们理解的唯一语言,所以它是唯一可以使用的语言,并且服从,说明)。

因为只懂“机器语言”,所以计算机不能接受“编程语言”的指令。 程序员不知道“机器语言”,只知道如何在“编程语言”中给出指令。 由于这个“编译器”或“解释器”既能理解“编程语言”也能理解“机器语言”,因此它可以将编程人员用“编程语言”给出的指令翻译成“机器语言”指令,可能知道程序员试图指示它做什么。

编程语言是一种包含语法和语义规则的forms语言。 这些规则描述了一种expression程序的方法 – 一组计算 – 这样它可以被转换成可以被机器执行的东西。

编程语言是描述哪些字符序列是有效的程序的语法,与定义执行时有效程序应该使计算机执行什么的语义配对。

那么,说实话,我会去这个定义:

编程语言是一种允许编程机器的语言。

这是唯一的,所有的编程语言都有共同之处。

一些是编译,一些解释,一些遵循正式的语法规则,一些不是(例如铁路 …没有机会把它放入EBNF或其他),有些是人类可读的,有些不是( brainfuck )…我同意, 目前他们都是没有forms的,但这是由于技术问题…除了这样一个事实,所有的编程语言都是正式的,没有别的理由,理解真正的人类语言目前太困难了(注意:我不是说没有语言是正式的,如果处理人类语言是可行的足够的程度)…

  1. 一个tongue </s>的回答:我可能无法定义它,但是当我看到它的时候我知道它。

  2. 如果某种机器具有某种机器,那么可以通过可以logging在某个时间持久性介质中的信息来控制这种机器,在那里必须有某种规则来expression可以logging的东西,这套规则可以被称为编程语言。

如果被控制的机器恰好是通用的(在图灵的意义上),那么这就是我们通常所说的计算机,但是也可以对更简单的机器进行编程。 我在想提花织机,或者各种可控的机床。

以一种接近人类语言的方式来expression逻辑,这是最好的方式。

编程语言是一组指令来产生特定的电子信号 ,所以硬件可以做这些算术。

当我使用计算机体系结构和汇编语言时 ,它的基本上是电子信号,它们是根据我们的计算机指令产生的,触发特定的电路来执行算术运算,然后在每个周期完成一条指令。

编程语言:一种用来控制计算机的语言