Rai*_*wig 42
源代码转换.所有种类.例子:
新控制语句:您需要WHILE语句吗?你的语言没有?为什么等待仁慈的独裁者可能在明年加一个.自己写吧.五分钟后.
更短的代码:你需要二十个几乎看起来相同的类声明 - 只有有限数量的地方是不同的.编写一个宏差异表格,将差异作为参数,并为您生成源代码.想稍后改变吗?在一个地方更改宏.
源树中的替换:您想要将代码添加到源树中吗?变量真的应该是函数调用吗?围绕"遍历"源代码的代码包裹宏,并更改找到变量的位置.
Postfix语法:您想以postfix形式编写代码吗?使用宏将代码重写为普通形式(Lisp中的前缀).
编译时效果:您需要在编译器环境中运行一些代码以通知开发环境定义?宏可以生成在编译时运行的代码.
编译时的代码简化/优化:您想在编译时简化一些代码吗?使用执行简化的宏 - 这样您就可以根据源表单将工作从运行时转移到编译时.
从描述/配置生成代码:您需要编写复杂的类组合.例如,你的窗口有一个类,子窗格有类,窗格之间有空间限制,你有一个命令循环,一个菜单和一大堆其他东西.编写一个宏来捕获窗口及其组件的描述,并根据描述创建驱动应用程序的类和命令.
语法改进:有些语言语法看起来不太方便吗?编写一个宏,使您(应用程序编写者)更方便.
特定于域的语言:您需要一种更接近应用程序域的语言吗?使用一堆宏创建必要的语言表单.
元语言抽象
基本思想:语言层面上的一切(新形式,新语法,表单转换,简化,IDE支持......)现在可以由开发人员逐个编程 - 没有单独的宏处理阶段.