タグ

ブックマーク / qiita.com/snowlt23 (1)

  • 項書き換えマクロで最適化 - Qiita

    Nimの特徴的な機能である項書き換えマクロ(English: term rewriting macro)についてです。 項書き換えマクロとは 項書き換えマクロについては知らない方も多いかと思います。 他の言語にはあまり見られない機能で、自分が確認している言語はNim以外ではCommon Lisp(コンパイラマクロ)とScheme(一部の処理系)ぐらいしかありません。(この言語にも項書き換えマクロあるよ!という方はコメントで教えてもらえると嬉しいです。) 項書き換えマクロは、項を書き換えるマクロで、項とは式などの構成要素を指す言葉です。 すなわち、私の解釈では項書き換えマクロはプログラムの構成要素自体を書き換えてしまうマクロになります。 なんでこんな機能があるの?と思われる方も多いかもしれませんが、これが特定の領域になると力を発揮します。 その特定の領域とは最適化です。 Nimの項書き換えマ

    項書き換えマクロで最適化 - Qiita
    yugui
    yugui 2018/04/16
    Nim
  • 1