WebMD
本页大纲

编程语言(Programming Language)

缩写:无

简述

用于书写程序的形式化符号系统:规定词汇、语法与语义,使人类意图能无歧义(在语言定义范围内)地映射为可执行行为。语言选择影响表达力、性能模型、生态与工程约束,但「能算什么」在图灵完备意义下往往可互通,差在如何算、多易维护。

为何出现

直接操作机器码成本极高且易错;需要更接近问题域、可组合、可检查的表达层。

使用场景

选型技术栈、阅读语言规范、跨语言互操作、教学与团队技能规划。

组成与要点

语法 + 语义 +(类型/内存/并发模型)+ 标准库与工具链

实践与应用

• 按问题域、团队技能、运行环境与生态成熟度选型,而非仅看语法喜好。
• 在一种语言内先掌握其惯用模型(如所有权、GC、原型)再谈风格之争。
• 多语言系统明确边界与数据交换格式。

注意事项

• 语言流行度 ≠ 场景适配。
• 「同构」多语言表面相似,语义陷阱(数值、相等、异步)仍在。
• 方言与实现差异(如 JS 引擎)会影响可移植性。

对比与易混

• 标记语言(如 HTML):描述结构,一般不描述完整计算过程。
• 查询语言(如 SQL):面向数据操作的领域语言,可与通用语言配合。
• 领域特定语言 DSL:为窄领域优化的语言或方言。

关联术语

• 语法:合法写法的规则
• 语义:合法程序的含义与效果
• 运行时:语言程序落地执行的环境
• 编译器 / 解释器:源码到执行的常见路径
• 类型:语言中对值与操作的约束方式