Clojure はじめてみました

Java7に追加予定とされている機能として、Closure機能というのがあります。

Java以外の言語、特に関数型言語と言われているものは、
なんらかの形でClosure機能をもっているようです。

Javaで、このClosure機能の追加が望まれている理由は、
Javaでのマルチコア・プロセッサ対応の並列プログラミング
をするためのフレームワークを実装するために、
このClosure機能が必要になるからだそうです。

Java7で実装を計画しているClosure機能については、
こちらで公開されています。

実際のところ、このJava7でのClosure機能の追加は、
実現できるか微妙な状況のようです
このペースだと、Java言語のClosure機能が登場するのは、
Java7以降で、かなり先の話になりそうです。

そこで、Java言語のClosure機能の登場を待たずに、
Java開発者が、マルチコア・プロセッサ対応の
並列プログラミングに対応する機能を体験できるものに、
JVM (Java仮想マシン)上で動作するClojureという言語があります。

簡単に言うと、Clojureは、以下の特徴を持った言語です。

  • 並列処理用に設計された
  • JVM上でバイト・コードで実行される
  • 関数型プログラミング言語
  • Lispライクである

また、Clojureはソフトウェアトランザクショナルメモリのモデルと
エージェント・システムと呼ばれるスレッド・ディスパッチ・フレームワーク
を利用することで一貫した安全な方法でスレッド間の状態
をやり取りするための様々な機能を提供しています。

Clojureは、Java等で慣れ親しんだオブジェクト指向とは異なり、
関数型プログラミング言語なので、違和感があると思いますが、
ステップ・バイ・ステップで体験していきましょう。

次回以降は、Clojureのプログラミングを、
弊社製品biz-Streamを使った例を示しながら紹介したいと思います。

biz-Stream詳細情報  biz-Stream資料請求

超高速!!高機能!! Web帳票ソリューション biz-Stream

オンデマンドかつリアルタイムにビジネスドキュメントを生成する帳票ソリューション