タグ

pythonとhaskellに関するsaitodevel01のブックマーク (2)

  • モナドを実装する(Python編) | Webシステム開発/教育ソリューションのタイムインターメディア

    発端 モナドの正体が分かると、 次はモナドを実装してみたくなるものです。 という訳で試しに Python でモナドを実装してみましょう。 別にどんな言語でも構わないのですが、 クロージャや部分適用が簡単に使えない言語では質的でないところで苦労する羽目になるので、 今回は Python を使うことにしました。 なお、今回作成した Python によるモナドの実装は GitHub で公開中です。 方針 モナドの具体例で一番簡単なものは Maybe でしょう。 まずは Maybe を Python のクラスとして実装して、 そこから一般的なところを括りだして Monad クラスを作ることにしましょう。 モナドの構成要素は以下の3つです: 普通の値をモナドにラップするための型 m普通の値を m にラップするための関数 returnモナドでラップされた普通の値を取り出して処理を行う演算子 >>=

    モナドを実装する(Python編) | Webシステム開発/教育ソリューションのタイムインターメディア
  • 紫藤のページ

    紫藤のページにようこそ! Lisp, Haskell, Python, Sather などの関数型言語の解説、小品プログラムを載せています。 ここでは関数型プログラミング言語をものすごく広い意味で使っており、 手続きをデータとして扱える言語を指します。 (Python, Sather などは普通はオブジェクト指向言語に分類されます。) また、xyzzy のマクロに関するメモもあります。 面白そうな割りに、web 上に文書が少ない題材を取り上げています。 リンクはご自由にお張りください。 更新ログ [Sep 15, 2014](Python) Set を用いたライフゲームの実装 を作成 [Jul 21, 2014]デコレータを用いた bottle.py のアクセスコントロール を作成 [Jul 13, 2014]Maildir のバックアップ を作成 [Jun 28, 2014]自宅サーバの

  • 1