DSL
Domain Specific Language
领域特定语言
A specialized computer language designed for a specific task.
为了解决某一类任务而专门设计的计算机语言
Martin Fowler 对于领域特定语言的定义,DSL 通过在表达能力上做的妥协换取在某一领域内的高效。
最常见的 DSL 包括 Regex 、SQL、 HTML & CSS
一些共同的特点:
- 没有计算和执行的概念;
- 其本身并不需要直接表示计算;
- 使用时只需要声明规则、事实以及某些元素之间的层级和关系;
GPL
General Purpose Language 通用编程语言
就是我们非常熟悉的 Objective-C、Java、Python 以及 C 语言等等。