GOALS:
- collection some userful external DSL design
- make dsl easy
Define DSL:
- 计算机程序设计语言(compute programming language)
- 语言性(language nature)
- 受限的表达性(limited expresssiveness)
- 针对领域(domain focus)
DSL Types:
- 外部 DSL,是一种『不同于应用系统主要使用语言』的语言。如正则表达式、SQL、Awek,XML 配置文件。
- 内部 DSL,是一种通用语言物特定用法。即形成特定风格的代码,如 Lisp 程序,Ruby on Rails。
- 语言工作台,专用的 IDE,用于定义和构建 DSL。
DSL 是一种处理抽象的方式,它需要语义模型作为输入。
When and How to Develop Domain-Specific Languages
@ 2019 A Phodal Huang's Idea. This code is distributed under the MIT license. See LICENSE
in this directory.