タグ

関数型言語に関するtomoemonのブックマーク (5)

  • 【Scala】flatMap は怖くない! | DevelopersIO

    ここで注意が必要なのは「型引数をとる全てのクラス(全ての総称型) ≠ 文脈付きの値」ということです。型引数をとり、文脈付きの値とはいえないクラスも存在します。 たとえば SeqFactory[A] は、 Seq のサブクラス A を生成するファクトリであり、 文脈付きの値ではありません。もっと身近な例を上げると、わたし達が普段よく目にしている(であろう) Provider[A] や Publisher[A] というインターフェイスも、それぞれ「Aを提供するもの」「Aを発行するもの」という意味であり、Aという値を修飾しているわけではないので文脈付きの値とは呼びません。 文脈付きの値を返す関数 親友検索を考える さて、文脈付きの値がどのようなものかわかってきたところで、実際に文脈付きの値を生成する関数を作ってみましょう。 …などと大げさに言ってみましたが、そんなもの、今までだってたくさん作って

    【Scala】flatMap は怖くない! | DevelopersIO
  • カリー化 != 部分適用 - kmizuの日記

    最近、ネット上でカリー化に関する記事を読んでいると、特にGroovy界隈でカリー化に関して誤解がまかり通っているようなので(特に実用的なGroovy: カレー化クロージャーによるファンクショナル・プログラミングはひどい。そもそも、Groovyの標準ライブラリ自体がカリー化を行うための関数ではないものにcurryとか付けてるから仕方無いのかもしれんが)、一言言っておく。 カリー化というのは、Groovyで言うと、 def add = {x, y -> x + y} のように、xとyという複数の引数を取って値を返す関数を def add = {x -> {y -> x + y}} //間違ってパースできないコードになっていたので修正(12/17) のように、一つの引数xをとって、「yを引数にとって値を返す関数」を値として返すような関数に変換すること、あるいは最初からそのように表現することを言う

    カリー化 != 部分適用 - kmizuの日記
    tomoemon
    tomoemon 2013/12/06
    1.カリー化された関数は1つしか引数を受け付けない。2.部分適用は複数の引数のうち一部を受け付けて関数を返す。であれば、3.カリー化関数に対して部分適用するという表現はおかしいのでは?
  • 刺激を求める技術者に捧げるScala講座---目次

    連載では,次世代のエンタープライズ・プラットフォームを支える言語として,このところ最も注目を集めている言語「Scala」の魅力をお伝えしていきたいと思います。Scalaは,技術的にもかなり刺激的で,楽しい言語に仕上がっています。最初の一歩から刺激的な技術解説まで,幅広くScalaおもしろさ,楽しさをお伝えしたいと思います。 第1回 なぜScalaなのか? 第2回 Scalaの基的な文法 第3回 Scala言語を探検する(1) 第4回 Scala言語を探検する(2) 第5回 Scala言語を探検する(3)関数型言語としてのScala 第6回 Scala言語を探検する(4)Scalaの型システム 第7回 関数脳のつくり方 First Season 第8回 Scala DSLでできること 第9回 Scala DSL事始め(前編) 第10回 Scala DSL事始め(後編)

    刺激を求める技術者に捧げるScala講座---目次
  • https://www.unixuser.org/~euske/doc/python/python-lisp-j.html

  • 数理科学的バグ撲滅方法論のすすめ---目次 | 日経 xTECH(クロステック)

    筆者 住井 英二郎 「プログラミング言語理論」という研究分野がある。この分野の研究者たちは,「ML」「Haskell」「Scheme」あるいは「λ計算」「π計算」(円周率計算のことではない)など,多くのプログラマにとっては聞いたこともない言語やモデルについて,日夜研究している。ただ,そのような言語は「難しい」「役に立たない」などと思われがちだ。 この連載では,こうしたプログラミング言語やソフトウエア科学の様々な研究を,できるだけ普通のプログラマやエンジニアにもわかりやすく(どちらかといえば理論よりも実用に重点をおいて)紹介していく。 更新は毎月第2水曜日(1月のみ第3水曜日)

    数理科学的バグ撲滅方法論のすすめ---目次 | 日経 xTECH(クロステック)
  • 1