Personal tools
You are here: Home ブログ 井上 JVM上の言語たち - JavaOne2010レポート番外編 -
« December 2010 »
Su Mo Tu We Th Fr Sa
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  
Recent entries
Apache2.4のリリース予定は来年(2011年)初め(あくまで予定) inoue 2010-12-23
Herokuの発音 inoue 2010-12-20
雑誌記事「ソフトウェア・テストPRESS Vol.9」の原稿公開 inoue 2010-12-18
IPA未踏のニュース inoue 2010-12-15
労基法とチキンゲーム inoue 2010-12-06
フロントエンドエンジニア inoue 2010-12-03
ASCII.technologies誌にMapReduceの記事を書きました inoue 2010-11-25
技術評論社パーフェクトシリーズ絶賛発売中 inoue 2010-11-24
雑誌連載「Emacsのトラノマキ」の原稿(part8)公開 inoue 2010-11-22
RESTの当惑 inoue 2010-11-22
「プログラマのためのUXチートシート」を作りました inoue 2010-11-19
「ビューティフルコード」を読みました inoue 2010-11-16
Categories
カテゴリなし
 
Document Actions

JVM上の言語たち - JavaOne2010レポート番外編 -

JavaOne2010で「The Next Big Java Virtual Machine Language」というタイトルのセッションに参加しました。略してNBJL(Next Big JVM Language)とのことです。

NBJLで探したら既に谷本さんの日本語レポートがあったのでリンクしておきます。

上記レポートを再利用して、差分だけ書き足します。

チェック例外(検査例外)へのダメ出しでは会場から同意の拍手が起きました。これが今の検査例外の実情です。

ロッド・ジョンソンが書籍「実践J2EEシステムデザイン(Expert One-on-One J2EE Design and Development)」を書いた時点では、検査例外をほぼダメ出ししていましたが、100%ダメとは言い切れないという微妙な態度(と少なくともぼくは読みました)でした。正確には、(検査例外)擁護派の立場も認めないことはない、という程度の態度でした。あれから7、8年経って、みんなロッド・ジョンソンに流れました。JavaEEもそうですが、ロッド・ジョンソンの描いたビジョンどおりにJavaは進みます。

NBJLのセッション講師は静的型言語支持派でした。ぼくも同じです。動的型言語がプロトタイピングに向くのは認めますし存在否定はしません。しかし、長く保守するコードなら静的型言語の方を選びます。ちなみに、静的型言語派がよく主張する安全性より、ぼくは可読性の観点で選びます。

日本語レポートでなぜかClojureが飛ばされていますが、NBJLセッションでは候補に以下の4つの言語を挙げていました。

  • Groovy
  • Scala
  • Clojure
  • Fantom

で、セッション講師はFantom推しの結論を出したと思ったのですが...

以下がセッション講師のブログです。

Fantom is closest to NBJL of these languages, but seems unlikely to succeed as the more relaxed type system seems to scare people off.

と書いてあります。

もうひとつ、日本語レポートが触れていない話を補足します。NBJLを考える時の指針として「Design pattern smells」と話していました。日本語に訳すと「デザインパターンは匂う」です。もっと意訳すると「デザインパターンは言語の欠陥を示唆している」です。JavaBeansのパターンはプロパティという言語機能の欠如を示唆し、ループパターンはクロージャの欠如を示唆し、ファクトリパターンは関数型の欠如を示唆します。そんな話でした。

谷本さんのレポートを読んで、これは聞きたかったと思ったのが次のふたつです。今更遅いですが。

ついでに以下のJVM上の言語比較の記事「Top five scripting languages on the JVM」を読みました。

ここでは次の順位をつけています。

  1. Groovy
  2. JRuby
  3. Scala
  4. Fantom
  5. Jython
  6. それ以下(Clojure、JavaFX(JVM上の新言語としては終わりましたが)、NetRexx)

Rhino(JavaScript)がないのは残念ですが、本当に大切なものは見えないものなのでしょう。

しかし上のリストで注目すべきはNetRexxです。かつてREXXネタでまったくうけない経験をしましたが(http://dev.ariel-networks.com/Members/inoue/nonsense)、今度のはいけると思います。

「最近、JVM上で新しい言語が色々と登場しています。GroovyとかScalaとかREXXとか」

これは笑いをとれます。間違いありません。

The URL to Trackback this entry is:
http://dev.ariel-networks.com/Members/inoue/nbjl/tbping
Add comment

You can add a comment by filling out the form below. Plain text formatting.

(Required)
(Required)
(Required)
This helps us prevent automated spamming.
Captcha Image


Copyright(C) 2001 - 2006 Ariel Networks, Inc. All rights reserved.