タグ

ブックマーク / lemniscus.hatenablog.com (1)

  • モナドの初歩 - 再帰の反復blog

    リスト フィリップ・ワドラー(Philip Wadler)は 「How to replace failure by a list of successes: a method for exception handling, backtracking, and pattern matching in lazy functional languages」(1985)で、失敗やバックトラックの可能性がある場合に結果をリストにして返すようにするというテクニックを紹介している。 すべての答えを探索してリストにして返す関数を呼び出しても、遅延評価言語ならば、実際にすべての答えを探索するわけではなく、必要に応じて必要なだけの答えを計算する。そのためリストを返す関数をバックトラック機構の代わりに使うことができるというのがこのテクニックのポイントになる(もちろんバックトラックが使われる全ての場合に適用できる

    モナドの初歩 - 再帰の反復blog
  • 1