kmizuの日記

プログラミングや形式言語に関係のあることを書いたり書かなかったり。

[Scala] Scalaユーザ会

Scalaユーザ会で、「知っていると役に立つかもしれないScala言語 Tips」という題目で発表してきました。Scala言語 Tipsといいつつ、実体はScala言語仕様を参照しつつ、Scalaの重箱の隅をつつくような内容で、聴講者の層を考えると、テーマ選択を誤ったかなあと、ちょっと思っていました。ただ、発表終わった後、_による無名関数のスコープについて質問いただけたのは嬉しかったです。

今後、Scalaユーザ会は月に1回〜二ヶ月に1回くらいのペースで定期的にイベントを開催していく方針で、自分も(おそらくScalaユーザ会のイベントとは別のスケジュールになると思いますが)、Scala言語仕様の輪読会みたいなのを主催することになりそうです。この辺は、まだ詳細は決まっていないので、詳細についてはまた後日。

他の方の発表について:

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

あいさつと、何故今Scalaが熱いかについて。発表を聴いていて、やはりScalaというのはJavaユーザを主にターゲットにした「ポストJava」言語なのだなあというのを改めて実感しました(それが良い悪いという話ではなくて)。個人的には対Java以外でもメリットやScala独自の面白い点はあると思いますが、例えば、関数型バリバリな人に対してはそれほど魅力的に映らないかもなあとも思います。

  • 関さん:「NetBeansGUIエディタが生成したコードで手軽にScalaSwing+GroupLayoutする」

急用が入って来られなくなったそうで、ちょっと残念でした。ScalaでGUIプログラムの話はWeb上でもあまりネタにならないので、聴いてみたかったです。

  • 浅海さん:SimpleModeling解説とデモ

浅海さんとは面識は無いですが、浅海さんが作られたSmartDoc(Javaで書かれたXMLベースのドキュメント生成ツール)は学群生時代に、レポートを書くためによく使っていました。あと、Relaxer(Javaで書かれたRelax(NG)スキーマコンパイラ)もバイト絡みでちょっと触ったことがあったり。そういうわけで、浅海さんと言えばJavaの人というイメージが強かったのですが、最近はScalaでSimpleModelerという、モデルコンパイラを開発されているらしく、その解説とデモなどがありました。正直なところ、モデルコンパイラの意義についてはあまりピンと来なかったのですが(コード自動生成系というのは理解できたのですが、どの辺りのコードが自動生成されるのかがピンと来なかった)、ScalaによるDSLの記述と、そこからGAE/J等のコードが自動生成されるデモは興味深かったです。

  • tmiyaさん:Scalaで数独を解く

Scalaで数独を解くプログラムを書くことをネタにした、Scalaの入門的な話。と思いきや、flatMapとかがさらっと出てくる辺り、それほど入門的な話でも無いような…。数独を解くプログラムは書いたことが無かったので、なるほどなるほどと思いながら聴いていました。

  • ヲザキさん(id:yuroyoroさん):Liftの超入門講座

id:yuroyoroさんには、Scala勉強会@関東-2のときにもLiftの話をしていただいたのですが、Liftが1.0になったことによる情報の追加や、Twitterのpublic timelineをCometで流すデモなどもあって、聴いていて飽きなかったです。

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

フロントエンドだけでなく、バックエンドの処理を含む、ほとんどをScalaで書いたということで、この事例が今後Scalaを業務で使う上での追い風になれば面白いと思いました(自分はまだ学生なんで、業務アプリに関わる機会はほとんど無いのですが)。

ユーザ会終了後、懇親会があったのですが、終了した時点で既に9時を回っていて、終電が気になるので、懇親会には参加せずに帰宅。