といった値をランダムに生成してくれるといったものです。こういったジェネレータが使われる例としてはQuickCheckのようなプロパティベーステストが有名でしょう。 標語が主張しているのはこういったジェネレータはランダムネスのパーサー(構文解析器)であるということです。ジェネレータは必要に応じて乱数を使いながらデータ構造を組み立てるプログラムだと考えると、予め十分な長さの乱数列を生成しておけばジェネレータはそれを先頭から消費しながらデータ構造を組み立てるパーサーとみなすことができ、この主張は自然に感じられるかもしれません。 論文では Free Monad によって作られた1つの抽象的なプログラムから ジェネレータ パーサー ランダムネス それぞれへの変換を考え、 ある種のジェネレータがパーサーとランダムネスの組み合わせで表せる ことを確認することにより、標語の主張を一定の条件下で証明するとい