第1回 Scala ユーザ会

*発表確定:Scalaユーザ会5/22(金)19:00-21:00@新宿三井ビル34F豆蔵Trルームに参加してきました。

昨年から Scala が熱いという噂を聞きつつも、勉強するきっかけがほしいと思っていたところ、ちょうど良かったです。関数型言語そのもののパラダイムが興味深くて、Haskell も勉強しつつ、一緒に2〜3年かけて長い目で関数型言語の習得に取り組もうと考えています。

多くの発表があったのですが、私が全然、無知なので詳細な感想が書けません(- -#
キーワード的に幾つか印象に残った内容のみ、取り上げてみます。

羽生田さん: あいさつ&挙手アンケート&なぜ Scala

wikipedia:Scala は、ポスト Java という位置付けのようです。オブジェクト指向+関数型言語の良いとこ取りで、凄いことができるんじゃないかと現在も活発に議論、方法論を模索されている言語だそうです。新しい言語なので、最近の技術動向のパラダイムも考慮しつつ仕様を検討されているところが期待できそうな雰囲気でもあります。

ScalaJVM(Java Virtual Machine) 上で動作し、既存の Java プログラムとも親和性が高いことから、既存プログラムの連携・移行が(他の言語と比べて)容易であるかのように囁かれています。その他のキーワードとしては、静的型付け、Generics 総称クラス、LL 言語のような開発生産性、純粋オブジェクト指向言語、並列性、スケーラビリティ、XMLDSL などが挙げられていました。

現時点では、出版されている推奨な書籍は以下のみのようですが、秋に翻訳版が出版される見通しだそうです。今から少しずつ情報収集、勉強し始めていくとちょうど良い時期な感じです(^ ^;;

Programming in Scala: A Comprehensive Step-by-step Guide

Programming in Scala: A Comprehensive Step-by-step Guide

浅海さん: SimpleModeling 解説とデモ

クラウド時代を楽しもう!edge2.cc というプロジェクトがあり、そこで研究・検証されている内容について紹介されていました。モデル駆動開発だとか、モデグラミングというテキストで DSL を書いたりマインドマップモデリングするだとか、Web アプリケーションのコードを自動生成する仕組みについて説明されました。

マインドマップモデリングするというのが、私にとっては新鮮なものの、マインドマップというツールがどんどん訳の分からないものになっていくような印象を受けました。マインドマップは、情報整理や情報共有のためのツールではなく、

情報は自分自身の中にあって、それを引っ張りだすためのフック

という教えが私の基本概念としてあります。マインドマップモデリングは開発者にとって、しっくりくるものかどうか興味深いところです。

水島さん: Scala 文法解説とヲザキさん: Lift の超入門講座

私がよく分かっていないので感想を書けなくて申し訳ないのですが、発表そのものは良かったです。Companion object/module や implicit parameter を、複数の発表者がキーワードとして挙げていました。重要な概念のようです。

tmiya さん: 「Scala数独を解く」をネタに、Scala の初心者向けの話

私にとっては一番楽しめた素晴らしい発表でした。発表資料も詳細に作成されていて、初心者向けに丁寧に解説されていました。時間が20分しかなくて、1時間ぐらいかけて詳細に説明を聞きたかったです。設計の考え方から、実装の詳細までカバーして説明されていました。数独という題材も、色んな設計・実装ができそうで面白いですね。私は先ず数独のルールを学ばないといけないです(^ ^;;

リファレンス:
発表資料「Scala で数独を解く」
ソースコード
M's Home Page

三木さん+喫茶津仕事人さん: Lift ベース特許情報の新サービスのデモ

実際に Scala で開発した業務サービスを提供している日本初の企業の事例紹介(?)でした。業務という観点で見れば、ユーザの要求を満たして、欲を言えば、メンテナンス性の高い仕組みで開発できれば良いなと思います。実際に業務サービスを構築する際に、良かった事や悪かった事をお聞きしたかったです。

最後に、参考までに作成したリアルタイム・マインドマップになります。