yhara.jp

Recent Posts

syntax-rulesへの道

Tech

メモ

実装するまえにやったほうが良いこと

  • define-macroを実装する
    • R7RSにはないけど、マクロというものを理解するためにまず作ったほうが良い
    • これ(+gensym)があれば実用上なんとかなる場面も多い
  • syntax-rules以外もサポートするのか決める
    • R7RS compatを目指すだけならsyntax-rulesだけ実装すれば実績解除
    • マクロにこだわりがある人は、オリジナルの低レベルマクロシステムをまず用意して、その上にsyntax-rules, explicit-renaming, implicit-renaming, syntax-caseなどを乗せたりする
    • syntax-caseを実装すれば、syntax-rulesは簡単に作れる

参考資料

syntax-rulesの何が大変なのか

自動で名前衝突を回避する機能があるので大変

仕様には「こうあるべき挙動」だけが書いてあって、どのように実装するかは書いていない

More posts

Posts

(more...)

Articles

(more...)

Category

Ads

About

About the author