はじめに まもなくリリースされる Emacs 25 の新機能の一つに「ジェネレータ (生成子 generator)」があります。 ( /lisp/emacs-lisp/generator.el/ ) ここでは、本機能の概要と利用法について簡単に紹介します。 ジェネレータとは ジェネレータ(生成子 generator)は、関数を呼び出す度に、前回の呼び出した状況を覚えていて、それに基づいて新しい値を生成して返します。 なお、Emacs 25の generator.el では、次々と値を生成する関数はイテレータ(反復子 Iterator)と呼ばれ、イテレータを作り出す関数をジェネレータと呼んでいますが、以下の記事ではまとめてジェネレータと呼びます。 以下に、フィボナッチ数列の指定された番号の値を返す関数の例を示します。 単純な関数の例は以下のようになります。 (defun fibonacci