タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

scalaとscalazに関するYamashiro0217のブックマーク (3)

  • 独習 Scalaz — 独習 Scalaz

    独習 Scalaz これまでいくつのプログラミング言語が羊の衣を着た Lisp に喩えられただろうか? Java は馴染み親しんだ C++ のような文法に GC を持ち込んだ。それまで他にも GC を載せた言語はあったけども、現実的に C++ の代替となりうる言語に GC が載ったことは 1996年には画期的に思われた。やがて時は経ち、人々は自分でメモリ管理をしないことに慣れていった。JavaScriptRuby の両言語もその第一級関数 (first-class function) やブロック構文を持つことから羊の衣を着た Lisp と呼ばれたことがある。S式の同図像性がマクロに適することから Lisp系の言語はまだ面白いと思う。 近年の言語はもう少し新しい関数型言語から概念を借りるようになってきた。型推論やパターンマッチングは ML にさかのぼることができると思う。時が経てば、人

  • 独習 Scalaz — 8日目

  • Scalazの型クラス

    Functor&Pureは型クラスPointedとして定義されています。Pointed Functorと呼ぶこともあるようです。 Applicative Functorの型クラスApplicativeはFunctor&Pure&Applyとなります。Applicative Functorのapply演算は型クラスApplyが提供します。 Monadの型クラスMonadはFunctor&Pure&Apply&Bindとなります。Monadのunit演算、bind演算はそれぞれ型クラスPureと型クラスBindが提供します。Monadのjoin演算は型クラスとしては定義されていませんが、型クラスBindのbind演算から逆算する関数が定義されています。 機能順で示すと: Monad > Applicative Functor > Pointed Functor > Functor ということに

    Scalazの型クラス
  • 1