タグ

clojureとjavaに関するnowokayのブックマーク (3)

  • JRubyとClojureは好相性?

    Clojure(参考記事)はJVM向けのLISP風言語である。Clojureで重視している点の1つに並行処理があり、Clojureでは不変のデータ構造で並行処理をサポートしている(Clojureは永続データ構造を装備(リンク))。もう1つの特徴がソフトウェアトランザクショナルメモリ(STM=Software Transactional Memory)であり、STMではロック(Lock)やミューテックス(Mutex)の代わりにトランザクションを使って共有メモリの更新が可能である。STMは未だに真価が問われている賛否両論の技術ではあるが、JVM上の実装にアクセスすることで、簡単にそれ(STM)を試してみることができる。 Clojureは間もなく1.0がリリース予定で、すでに多数のClojureライブラリが利用可能になっている(リンク)。Rubyのライブラリからインスピレーションを得たものもあり

    JRubyとClojureは好相性?
  • ClojureがSTMとLISPをJVMにもたらす

    Clojure(リンク)はLISPファミリの言語のかなり新しいメンバであり、Javaプラットフォームで動作する。2007年に導入され、すで高い関心を集めている。ひとつの理由はClojureの並行処理へのアプローチであり、ソフトウェアトランザクショナルメモリ(STM)のコンセプトを踏まえている。 Stuart Halloway氏は「Programming Clojure」(リンク) (Pragmatic Programmersで公開されている)の著者であるが、このは現在ベータ版である。私達はStuart氏とClojureやSTM、ツール、さらにたくさんのことを話した。 InfoQ: Clojureは並行処理の支援にSTMを使用していますが、STMについて簡単に教えて下さい。 STMはもっと大きな話である、ミュータブルな状態のための明確なAPIの一部です。みなさんのコードを純粋な機能的でミュ

    ClojureがSTMとLISPをJVMにもたらす
  • Clojure

    Clojure is a robust, practical, and fast programming language with a set of useful features that together form a simple, coherent, and powerful tool. The Clojure Programming Language Clojure is a dynamic, general-purpose programming language, combining the approachability and interactive development of a scripting language with an efficient and robust infrastructure for multithreaded programming.

  • 1