BT

Mark Mahieu氏がCICEクロージャプロトタイプを作成

| 作者: Charles Humble フォローする 902 人のフォロワー , 翻訳者 編集部 フォローする 0 人のフォロワー 投稿日 2008年1月25日. 推定読書時間: 2 分 |
過去数年のJava業界において最もホットな話題は、Java言語にフルサポートクロージャを付加することであった。クロージャが導入可能な複雑性が与えられているのを踏まえ、多様なプロポーサルのためのプロトタイプを用いて実験することが可能でない限りそれがもたらす影響を判断するのは難しい。
今やNeal Gafter氏のBGGAプロポーサルプロトタイプ(source)に参加しているMark Mahieu氏は、Bob Lee氏、Doug Lea氏、Josh Bloch氏によって記されたCICE/ARMプロポーサルの実装(source)を編さんしている。Concise Instance Creation Expressions (CICE)(source)は単純にRunnable、Callable、かもしくはComparatorのような単一の抽象メソッドを用いて、内部クラスのインスタンス のインスタント化のための、よりコンパクトなシンタックスを提供する。Automatic Resource Management (ARM)(source)ブロックはクロージャ用の主要使用ケースの一つをサポートする。リソース上でクローズメソッドを自動的に呼ぶブロックのレキシカルなスコープを出るような時にブロック内でのリソーススコープの使用である。

Mahieu氏の最初の実装はスコープ内に制限されている。CICEには表現、パブリックローカル変数と黙示的にファイナルローカル変数のみが実装されて いる。パブリックローカルとタイプインファレンスは実装されていない。ARMのブロック実装はARMブロックのdo() { } formのみをサポートしまたスタート地点としてjava.io.Closeableに依存している。Mahieu氏が記したように、Closeableを使用しているARM仕様そのものはたくさんの既存のタイプ、java.sql.Connection, Statement, ResultSetなどなどが未チェックの例外を投入するという事実の観点においてそれを実装するように作ることができないため問題的なのである。

プロトタイプは既にチェック済みの例外用のdo() { } formのデフォルトセマンティックを変更するより、新しいARM実装のビルド(source)がプロポーサル内の詳細を排斥するのを助けている。

Stephen Colebourne氏がFCM用のプロトタイプ(source)に取り掛かっているのでこの先数年において私達はプロポーサルが作用しているかいないかを把握することが可能になるだろう。

原文はこちらです:http://www.infoq.com/news/2008/01/cice-closure

この記事に星をつける

おすすめ度
スタイル

こんにちは

コメントするには InfoQアカウントの登録 または が必要です。InfoQ に登録するとさまざまなことができます。

アカウント登録をしてInfoQをお楽しみください。

あなたの意見をお聞かせください。

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする
コミュニティコメント

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

ディスカッション

InfoQにログインし新機能を利用する


パスワードを忘れた方はこちらへ

Follow

お気に入りのトピックや著者をフォローする

業界やサイト内で一番重要な見出しを閲覧する

Like

より多いシグナル、より少ないノイズ

お気に入りのトピックと著者を選択して自分のフィードを作る

Notifications

最新情報をすぐ手に入れるようにしよう

通知設定をして、お気に入りコンテンツを見逃さないようにしよう!

BT