ひしだまの変更履歴

ひしだまHPの更新履歴。
主にTRPGリプレイの元ネタ集、プログラミング技術メモと自作ソフト、好きなゲームや音楽です。

Scala2.10のさわり

2013-06-08 23:36:56 | PG(Scala)

ひさびさにScalaネタ。
Scala2.10が出たので変化した箇所を調べたいなーと前から思ってたんだけど、たまたま2.10.2が出たことだし、xuweiさんのScala2.10 以降に入るかもしれない機能まとめを参考にしつつ、興味ある部分を見てみた。
(ドラクエ10が全職業でレベル50になったから小休止中で時間が出来たとか、そんな事は無いですよ?w)

まずいつも調べているのが、MapとかList(Seq)のコレクションメソッドが追加されているかどうか。
今回はtoくらいしか目立つものは無かったかな。あ、toVectorも追加されてたけど、今まで無かったのかって感じ(笑)
applyOrElseやrunWithはPartialFunction関係みたいで、使いどころがイマイチよく分からないし(爆)
そういえばdeprecated(非推奨)だったメソッドが削除されたみたいだけど、自分のページでは非推奨メソッドはそもそも書いてなかったので、影響は無いw

REPLでもコマンドに増減がある。2.9で導入されて2.10で廃止されたのもあるみたい^^;
便利なのが、「:warning」コマンド!
非推奨な文法を使ったりすると「re-run with -deprecation for details」という警告が出て、詳細を知りたければ、今まではscalaコマンドに「-deprecation」を付けて再起動して同じ文を実行する必要があった。
今回からは警告が出たら「:warn」と入れるだけで詳細情報が表示される!

Scala2.10で文法的に大きな追加は以下のものかな。
値クラス
implicit class
文字列の補間
implicit classはpimp my libraryパターンに替わるもので便利なので、押さえておきたい。
文字列の補間は、整形に便利そう。DSLを作る際とかにも何かに使えるかも?

ClassManifestが非推奨になったのはちょっとびっくり。
代わりに新設されたClassTagは、メソッド名が違うだけでClassManifestとほとんど同じ使い方っぽいけど。

新設されたDynamicはなかなか面白い。
エンティティーとかを自動生成するライブラリーでは使い道がありそうな気がする。

日付関連では、噂のJodaTimeとやらは入っていないのかな?
durationという、期間(時間)を表すパッケージは新設されたみたいだけど、これだけでは何とも^^;

あと、dbcはばっさり削除されたみたい。
それなりに面白い仕組みだったんだけどなー(まともに使ったことないけど(爆))



最新の画像もっと見る

コメントを投稿