用Lua进行元编程
metalua 是一门语言和编译器,她提供了:* 全兼容Lua 5.1的源码和字节码:清洁,优雅的语法和语义,神奇的表达能力,好性能,和几乎全平台的通用性
* 一个完全宏系统,类似 Lisp dialects 和 Haskell Template;巧妙的程序可以视作源码,或抽象语法树,或专有理论,无论哪一个都会让你的任务完成的更好
* 一个动态可扩展分析器,支持你混合你的宏和其它的语言
* 一套语言扩展,所有都用metalua的宏实现。
和Lisp相比,metalua有以下的特色:
* 不用宏就不被宏烦
* 鼓励开发者按照语言惯例来开发,而不是所谓的“最佳实践”。
* 提供自由的编写模式。如果你清楚你在做什么,语言不会干涉你的方法。
* 清晰的标明有趣的事情发生的地方:所有的元操作都用 +{...} 和 -{...}括起来。
你可以从这里下载 metalua,也可 在线浏览源码 或从 git仓库 获取。