2009年7月24日金曜日

Scala 練習1

ITPro で Scala 講座の連載を見つけたので、「第一回 なぜScalaなのか?」の通りにやってみる。

・指定サイトからのファイル入手からインストールまで、すんなり成功。ただ、動作確認のためバージョンを見る箇所で、記事中、2.7.1.finalとあるが 2.7.5.finalと表示された。バージョンが上がっているらしい。

・対話形式での実行 → 成功。試しにわざとfooと入力してみると、以下のようなエラーメッセージ

scala> foo
<console>:5: error: not found: value foo
foo
^


・スクリプトとして実行 → 成功。ここでも正しい記述の代わりに"foo"と書いて実行してみると、以下のエラー出力を得た。
(fragment of helloWorld.scala):1: error: not found: value foo
foo
^
one error found
!!!
discarding <script preamble>


・コンパイルして実行 → 成功。javaのクラスコードが二つ生成されるが、それぞれの役割は何だろう。特に"$"がついてるやつは?

・Carクラスを作るところで、記事の通りに「>scalac CarMain.scala」と打ちこむと、
CarMain.scala:3: error: not found: type Car
と言ってくる。「>scalac *.scala」としてみると成功。

・記事中に Car.scala を UTF-8で保存するよう指示があるが、試しにSJIS で保存して再試行してみると、デコード不能という事でコンパイル時に Java の IOException が発生。そこで「>scalac -encoding "sjis" Car.scala」として、encodingを指定してみると、SJISでも試行成功。

・Javaコードから使用するところの試行では、classpathに含めている scala-decoder.jar なるものが見当たらずコンパイル失敗。代わりに scala-library.jarを指定すると成功。scalaのバージョンの違いだろう。

・ついでに、カレント直下のディレクトリ src と classesを、それぞれソースディレクトリと出力ディレクトリに指定してみる。以下のようにやってみたらできた。
scalac -d classes -sourcepath src src\*.scala

----
連載目次はここ

0 件のコメント:

コメントを投稿