与SICP中的“图片语言”类似的小语言

时间:2014-04-24 10:43:13

标签: scheme sicp

SICP第2.2.4节描述了一种小型的图片语言"构建复杂的图像模式。该语言定义了单个基元painter以在给定框架内绘制图像,并用于转换和合并painters以创建新的painter

我喜欢这个例子,希望看到更多这类语言的例子(最好是Scheme)。我会更喜欢系统/业务领域的语言。你知道这些小语言吗?

2 个答案:

答案 0 :(得分:2)

这些“小”语言也称为Domain-specific languages或DSL。它是一种广泛使用的编程范式,但它有其优点和缺点。

例如,有一个名为Zillions of Games的商业通用游戏系统。它使用S-expressions,因此如果你知道Lisp,它的语法看起来非常熟悉。事实上,任何游戏脚本语言都是DSL。

如果您是Web开发人员,则经常处理模板语言。您也可以将模板语言视为特定于域的语言。其中一些可以通过自定义模板标记进行扩展,例如Django template language

目前的一些通用编程语言最初是作为领域特定语言开发的。例如,Erlang最初是由爱立信为电话应用程序设计的。

答案 1 :(得分:1)

任何规模的精心设计的程序都会有一种或多种图片语言'在里面。要查找示例,请尝试MIT SchemeSchemers.org