タグ

モナドに関するj5ik2oのブックマーク (8)

  • 30分でわかるJavaScriptプログラマのためのモナド入門

    「30分でわかる」のは、だいたい、 4. モナド(Monad)とは何か? の読了までを想定しています。 また速い人なら、30分で全部一気に読み通せる分量でもあると思います。 30分以上かかっても一気読みしてしまうことが推奨されますし、一気読みできるように、前に戻って知識の再確認をしなくて済むように、最大限留意して構成を設計した上で執筆されています。 数学と用語問題。モナドの理論的基盤として圏論があるのは事実。理論的基盤がしっかりしているのはプログラミングという数学的作業において歓迎すべきことではある一方で、他方そのため一般的なプログラマにとってはまず用語に馴染みがない。歴史的に、圏論ベースのモナドを理論から関数型プログラミングに応用されていく過程では、実際、先駆者の間でさえ紆余曲折があったのだが、学習者へは馴染みのない用語を伴って、いきなり高度な数学的概念全開で天下り的に提示されてしまうこ

  • 「Javaで継続モナド」をScalaに翻訳/Scala Advent Calendar 2013

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    「Javaで継続モナド」をScalaに翻訳/Scala Advent Calendar 2013
  • Freeモナドって何なのさっ!? - capriccioso String Creating(Object something){ return My.Expression(something); }

    最近Haskellerの間でFreeモナドが熱いです。 Haskellで悟りを開いた人がFreeモナドで再び悟りを開いたりして、なんかよく解らないけど凄いことになっている今日このごろですが、すっかり乗り遅れていました。どうも、貴女のちゅーんです。 で、皆こぞって「すごいすごい」と言っているFreeモナドなので、流石にいつもまでも全然知らないのはマズイんじゃないかなぁとか思って、重い腰を持ち上げ調べながらこの記事を書き始めたワケですよ。はい。*1 けっこう急ぎで勉強して書き上げたので随所に間違いあるかもです。ツッコミお待ちしてます。 さて、この「Freeモナド」について、オレオレ定義で簡単に言葉にすると。「Functorと組み合わせて様々な挙動を実現できるモナド」です。 大抵「Monadのインスタンス」というと、MaybeにしてもIOにしても、わりと具体的な事象を扱ってますが、このFreeモ

    Freeモナドって何なのさっ!? - capriccioso String Creating(Object something){ return My.Expression(something); }
  • わかめのモナド浸し(モナドカンファレンス) を開催します。 #わかめモナ化 - うさぎ組

    イベント申し込みページ「わかめのモナド浸し -モナドは悟りを開くのか-」 【わかめのモナド浸し - connpass】 きっかけ 以前から@j5ik2oさんとTwitterで「モナドのイベントやりたいですね!」って言っていていつやろうか迷っていました。 するとTwitterで わかめちゃんを名古屋に呼んでモナド漬けにする会まだー 2012-10-04 15:32:45 via Tween 「あぁ、これは@vvakameさんの口癖をモナドにしてしまうようなモナドだけのイベントやればいいのか。そうか。」という発想にいたり、募集ページたてました。 イメージ-> @vvakame 「プージャでカレー!それとモナド。」「モナドかわいいよ、モナド。」「JSXのパースむずかしいなー。モナド。」「名古屋楽しかった!モナド!」 みたいな。 @j5ik2oさんも参加してくださるようです!@j5ik2oさんはS

    j5ik2o
    j5ik2o 2012/10/06
    どもどもー。モナドが使いこなせるようになればいいなo(^▽^)o
  • 1 モナモナ言わない モナド入門 2011.12.3 山本和彦 2 お品書き 統一理論と大統一理論 コンテナの力の階層 内包表記 3 Q) なぜモナドが理解できないのか? A) 抽象的な概念だから 4 Q) 抽象の壁��

    1 モナモナ言わない モナド入門 2011.12.3 山和彦 2 お品書き 統一理論と大統一理論 コンテナの力の階層 内包表記 3 Q) なぜモナドが理解できないのか? A) 抽象的な概念だから 4 Q) 抽象の壁を突破するには どうすればいいのか? A) まず具体例を見てから 抽象化していくしかない 5 統一理論と大統一理論 6 物理学での抽象化 7 Haskell での抽象化 8 状態系統一理論 9 Parser データ定義 data Parser a = Parser (String -> [(a,String)]) Parser を生成する関数 pwrap :: a -> Parser a pwrap v = Parser $ \inp -> [(v,inp)] Parser を合成する関数 pbind :: Parser a -> (a -> Parser b) -> Par

  • 第3回 mapからモナドを理解する

    今回は「モナド(monad)」について説明します。モナドはHaskellの重要な特徴の一つなので,名前くらいは聞いたことがある人が多いでしょう。ただ,「モナドは難しい」という声もよく聞きます。 モナドとは一体なんでしょうか。前回,「HaskellはIOを取り扱うためにモナドと呼ばれる特別な仕組みを使用することで有名です」と書きました。Haskellは遅延評価を行うため,プログラマが処理の順番を確実に指定することができず,そのままでは入出力の処理には不向きです。モナドを使えば制御構造を導入できるため,この問題を解決できます。前回でいえば,(IO a -> IO a)にマッチする関数――finallyやprintThenAdd――を定義している部分がモナドに相当します。また,GHCiのプロンプトにもモナドが使われています。このように入出力操作を行うモナドの代表格が「IOモナド」です。ライブラリ

    第3回 mapからモナドを理解する
    j5ik2o
    j5ik2o 2011/11/02
    わかりずれーw
  • All About Monads モナドのすべて

    モナドのすべて Haskell におけるモナドプログラミングの理論と実践に関する包括的ガイド Version 1.1.0 このチュートリアルは、モナドの概念とその関数プログラミングにおける応用に ついて、初中級の Haskell プログラマにわかりやすく、利用価値があるような 解説をすることを旨としています。読者は Haskell になれていることを前提と しますが、モナドに関する経験は要求していません。このチュートリアルは、多 くの題材をカバーしています。後半のセクションでは、前半の題材をよく理解し ていることを前提とします。順をおって、モナドプログラミングを例示するため のサンプルコードがたくさん用意されています。一読で、すべての題材を吸収し ようというのはお勧めできません。 このチュートリアルは 3 つの部分で構成されています。最初の部分は、 関数プログラミングにおけるモナドの基

  • 「モナドは象だ(Monads are Elephants)」日本語訳 — Japanese Translation of Monads are Elephants v1.0 documentation

    「モナドは象だ(Monads are Elephants)」日語訳¶ この文章は、以下の記事の翻訳です。 Monads are Elephants: http://james-iry.blogspot.com/2007/09/monads-are-elephants-part-1.html http://james-iry.blogspot.com/2007/10/monads-are-elephants-part-2.html http://james-iry.blogspot.com/2007/10/monads-are-elephants-part-3.html http://james-iry.blogspot.com/2007/11/monads-are-elephants-part-4.html JAMES IRY:ONE DIV ZERO: http://james-iry

  • 1