Scalaをいじってみた

Scalaというスクリプト言語を教えていただいたのでちょっと調べてみた.

  • Javaで実装されている.
  • スクリプト言語にはめずらしく,静的な型付き.
  • 型解析をしてくれるので,全部指定する必要はない.

まずは,インストール.MacOSXの場合は,portsで入った.

sudo port install scala

ドキュメントは含まれていないようなので,サイトからダウンロード.

実行

コマンドラインから起動する.と,一息おいておもむろに起動.2回目からはディスクキャッシュが効くのかちょっと速いが.やはりこの辺が,Javaで実装されたものに共通の弱点か.

$ scala
Welcome to Scala version 2.7.1.final (Java HotSpot(TM) Client VM, Java 1.5.0_13).
Type in expressions to have them evaluated.
Type :help for more information.

scala> 

トップのevalループが立ち上がる.とりあえず,hello worldを.

scala> def hello(arg: String) {
     |     println("hello " + arg)
     | }
hello: (String)Unit

scala> hello("world")
hello world

ボールドになっている部分が,インタプリタの出力.

  • Javaと違って,クラスの外に関数を作れる.
  • def で関数定義.
  • 引数と型を書く順番が,Javaと逆.