BT

Kullaプロジェクト - Java用REPL

| 作者: Matt Raible フォローする 12 人のフォロワー , 翻訳者 吉田 英人 フォローする 0 人のフォロワー 投稿日 2014年10月19日. 推定読書時間: 2 分 |

原文(投稿日:2014/09/30)へのリンク

Java REPLが近いうちに,あなたのJDKの元に届きそうだ。Oracle言語ツールチームのエンジニアであるRobert Field氏は先頃,Java REPL("Read-Evaluate-Print-Loop")プロジェクトの創設を提案した。投票を経て,Project Kullaと呼ばれるこのプロジェクトが承認されたのだ。

REPLは基本的には,スクリプティングシェルないしコンソールである。UNIXシェルやGroovyコンソールのように,アルゴリズムの確認のために使用するものだ。

REPLに対応するJEP(Java Enhancement Proposal)には,グラフィックインターフェースやデバッグのサポート,IDE的な機能など,いくつかの項目がスコープ外であると述べられている。プログラム言語の学習においては即時のフィードバックが重要であり,その機会を欠くために,多くの教育機関がJavaから離れていっている,というのが提案の理由である。対話的な実行は,従来の編集/コンパイル/実行よりもはるかに効率的なのだ。

"public static void main(String[] args){"というクラスの儀式を書かなくても,Javaで記述した短いスクリプトが実用的なものになる。

現時点で利用可能な選択肢としては,他にも次のものがある。

JEPによると,Java REPLはJDK 9で提供される予定である。ただしOpen JDKのJDK 9には,機能としてリストアップされていない。

Scalaを開発したMartin Odersky氏は先日,JavaでREPLを使用することの意義についての質問に対して,次のように返答した。

"Javaの直面している問題は,それが根本的に命令文(statement)志向の言語であることです。命令文を書いて,それを実行すると,結果が得られます。対照的にREPLは式(expression)志向です。式を書けば,REPLが結果を示します。電卓のようなものです。JavaでREPLを実現することは可能ですが,式志向の言語の場合ほど有用ではないでしょう。"

REPLは言語学習において,不可欠なものかも知れない。ただしフィードバックが迅速であることが,初学者に対して,他の言語よりもJavaの学習を促すことになるかは,まだ分からない。

この記事に星をつける

おすすめ度
スタイル

こんにちは

コメントするには 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