上次我介绍了一个基本版本的可追溯宏 deftraceable, 它允许我们编写可跟踪的函数. 这个宏的最终版本还有一些遗留的问题, 今天我们将解决其中一个 — 参数模式匹配....因此, 当你调用 deftracable div(a, b) 时, deftracable div(a, b), do: ......现在我们需要将这些修饰过的参数注入到函数的头部, 以取代原始参数...., 为每个节点调用提供的 lambda 函数. lambda 函数接收元素的 AST, 这样我们有机会返回一些除了指定节点之外的东西....缺点是, 编写的宏的代码变得越来越复杂, 并且更难分析.
今天的话题到此结束. 下一次, 我将讨论原地代码生成技术.