タグ

Clojureに関するcoppieeeのブックマーク (2)

  • 無名関数を作るためのシンタックスシュガー - kmizuの日記

    普段Scalaのことばっかり書いてるこの日記だが、たまにはClojureの話題でも。Clojureには、無名関数を簡単に作るための構文があり、無名関数化したい範囲を#()で囲って、引数を与えたい部分に%を書くという感じで、短い無名関数を綺麗に書けるので気に入っている。たとえば、リストの全ての要素に1を足すという処理は、#()を使って以下のように記述できる。 user=> (map #(+ % 1) '(1 2 3 4 5)) (2 3 4 5 6) 無名関数の引数が複数ある場合も、もちろん対応していて、その場合は、第一引数は%1、第二引数は%2という具合に、%nという形で記述すれば良い。たとえば、リストの各要素を2乗した値を合計するという処理が以下のように書ける。このようなケースは、Scalaのプレースホルダ構文だとうまく書けない(同じ仮引数が複数個所に出現するため。複数引数の無名関数その

    無名関数を作るためのシンタックスシュガー - kmizuの日記
    coppieee
    coppieee 2010/01/11
    おお。Clojureってすげぇ!
  • Clojure Tutorial For the Non-Lisp Programmer | Moxley Stratton

    Clojure is a new programming language that uses the Java Virtual Runtime as its platform. Clojure is a dialect of Lisp. The language home page is at http://clojure.org/. Table of Contents A Quick Comparison Installing Clojure Atoms Lists Vectors, Maps and Sets Defining Variables and Functions Special Forms Java Integration Looping and Iterating Sequences A Quick Comparison In C-like lang

    coppieee
    coppieee 2009/05/02
    あとで読むかもしれない
  • 1