Lisp中編寫宏的步驟以及規範

一.編寫步驟求職

1.編寫示例的宏調用以及它應當展開的代碼,反之亦然.變量

2.編寫從示例調用中生成手寫展開式的代碼.方法

3.確保宏抽象不產生"泄露".生成

二.遵循規則參數

1.除非有特殊理由,不然須要將展開式中任何子形式放在一個位置上,使其求職順序與宏調用的子形式相同.

2.除非有特殊理由,不然要確保子形式僅被求值一次,方法是在展開式中建立變量來持有求值參數形式所獲得的值,而後在展開式中全部須要用到該值的地方使用這個變量.

3.在宏展開期使用GENSYM來建立展開式中用到的變量名.

相關文章
相關標籤/搜索