タグ

!tumblr-techとmonadに関するtyruのブックマーク (6)

  • Monads in C++ |   Bartosz Milewski's Programming Cafe

    Monads in C++ Posted by Bartosz Milewski under C++, Functional Programming, Haskell, Monads, Programming, Type System [32] Comments Follow @BartoszMilewski “You must be kidding!” would be the expected reaction to “Monads in C++.” Hence my surprise when I was invited to Boostcon 11 to give a three-hour presentation on said topic, a presentation which was met with totally unexpected level of interes

    Monads in C++ |   Bartosz Milewski's Programming Cafe
  • 「モナドは象だ(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

  • モナドはメタファーではない · eed3si9n

    2011-05-28 Scala界の関数型プログラミング一派を代表する論客の一人、@djspiewak が 2010年に書いた “Monads Are Not Metaphors” を翻訳しました。翻訳の公開は人より許諾済みです。翻訳の間違い等があれば遠慮なくご指摘ください。 2010年12月27日 Daniel Spiewak 著 2011年5月29日 e.e d3si9n 訳 僕は今、約束を破るところだ。およそ三年前、僕は絶対にモナドの記事だけは書かないと自分に約束した。既にモナドに関する記事は有り余っている。記事の数が多すぎてその多さだけで多くの人は混乱している。しかも全員がモナドに対して異なる扱い方をしているため、モナドの概念を初めて学ぼうとする者は、ブリトー、宇宙服、象、砂漠のベドウィン (訳注: アラブ系遊牧民) の共通項を探す努力をするハメになっている。 僕は、この混乱した

  • IOモナドとHaskell の最も単純なイメージ | tnomuraのブログ

    抽象的な記号を扱うときに大切なのは、それについての何か具体的なイメージを持っていることだ。 例えば集合のイメージなら丸い輪のなかに色とりどりのおはじきが入っているところを想像するし、関数のイメージは、二つの集合の要素のおはじきを糸で結んだ物が、おはじきの数だけあるところをイメージすると分かりやすい。 このイメージモデルを使えば、写像 f : A -> B が全射なら、集合Bのどのおはじきをつまみあげても、その端に集合Aのおはじきが付いてくるし、単射なら、集合Aのおはじきを二つ引っ張ると、必ずBの違うおはじきが引っ張られる。 全単射なら、集合Bのどのおはじきにも集合Aのおはじきはつながれており、集合Bの違うおはじきに対しては集合Aの同じおはじきが付いてくることはない。もしそうでなければ、集合Bの二つのおはじきにひとつの集合Aのおはじきがつながっていることになり、写像の条件を満たさないし、集合

    IOモナドとHaskell の最も単純なイメージ | tnomuraのブログ
  • Maybe monad in C++ | KernelTrap

    Jeremy founded Tag1 Consulting in 2007. He has been a contributing core Drupal developer since 2002, and helped establish Drupal as a successful CMS through the early popularity of his personal blog, KernelTrap.org. Over the years, he authored and maintained the core statistics module and throttle module, as well as the pager logic and the initial Drupal 5 installer. He continues to contribute to

    Maybe monad in C++ | KernelTrap
    tyru
    tyru 2010/06/15
    C++でMaybe monadの実装 / それboost::optionalで...と思ったけどあった
  • モナドって結局何なのよ? — join to Monad v0.1 documentation

    モナドって結局何なのよ?¶ Haskell を勉強しようとすると必ず「モナド」ってのが出てきます。困ったものです。数学とか圏論とか関係があるらしくって、何が書いてあるんだか分からなくって嫌になってしまいます。でもね、Haskell って凄いらしいじゃないですか、格好良いらしいじゃないですか。ここはちょっとがんばって色々考えてみましょう。 そもそも Haskell って何なのよ?¶ 何なんでしょうね、Haskell って。コンピュータ言語らしいんです、あ、それは分かってると。良く挙げられる性質は次な感じ?: 関数型言語 強い型付け 遅延評価 参照透過 ここでちょっと型に関して見てみましょう。試しに Haskell の実装の 1 つである Hugs で 1 について考えてみます: $ hugs __ __ __ __ ____ ___ _____________________________

  • 1