ラベル Scala の投稿を表示しています。 すべての投稿を表示
ラベル Scala の投稿を表示しています。 すべての投稿を表示

2012年3月14日水曜日

Scala IDE for EclipseのインストールとHello world



Scalaのエディターは、何がいいんだろう?
ということで、調べてみたところいくつかあるようですが、
IDE and Editor pluginsにあるScala IDEのインストールと
せっかくなのでHello worldまで試してみます。

Scala IDEのサイト上では、インストール方法とHello worldが動画で閲覧できます。
http://scala-ide.org/download/current.html

以下Eclipse、Scala IDEのインストールとHello Worldまでの手順です。
Eclipseのインストール以外は動画とほぼ同じ内容です。

Eclipse 3.6とScala IDE 2.0.0のインストール


▼Eclipse3.6インストール


2012/3/13現在Scala IDEインストール要件
・JDK 5 or JDK 6 (JDK 7 is not supported).
・Scala IDE is officially supporting Eclipse 3.6 (Helios).

Eclipse IDE for Java Developers
http://www.eclipse.org/downloads/packages/release/helios/sr2


ここでは、Mac Cocoa 64-bit版を選択しました。
ダウンロードが終了したら解凍して「アプリケーション」に移動しました。

▼Eclipseアップデート
Eclipseを起動します。


1. メニュー[Help]→[Check Updates]
しばらく待ちます。
2. [Next>]ボタンをクリック
3. [Next>]ボタンをクリック
4. ライセンスの同意を求められるので、
「I accept the terms of the license agreements」にチェックをつけて[Finish]ボタンをクリック
5. アップデートが完了したら[Restart Now]ボタンをクリックしてEclipseを再起動します。


▼Scala IDE for Eclipseのインストール


1. メニュー[Help]→[install New Software]をクリック
2. [add]ボタンクリック
3. 次の項目を入力して[OK]ボタンをクリック


Name: Scala IDE for Scala 2.9
Location: http://download.scala-ide.org/releases-29/stable/site


4. 「Scala IDE for Eclipse」にチェックをつけて[next>]ボタンをクリック
5. [next>]ボタンをクリック
6. ライセンスの同意を求められるので、
「I accept the terms of the license agreements」にチェックをつけて[Finish]ボタンをクリック
しばらく待ちます。
7. [Restart Now]ボタンをクリックしてeclipseを再起動します。


▼Scala IDE for Eclipseの初期設定


1. メニュー[Windows]→[Open Perspective]→[Other...]をクリック
2. [Scala]を選択して[OK]ボタンをクリック
3.「Upgrade of Scala plugin detected.」ダイアログが表示された場合


3-1. [Yes]ボタンをクリックする。
3-2. 「Use recommended default settings」を選択して[OK]ボタンをクリック



▼Hello world


1. メニュー[File]→[New]→[Scala Project]をクリック
2. Project Nameに「HelloWorld」を入力して[Finish]ボタンをクリック
3. メニュー[File]→[New]→[Scala Object]をクリック
4. Name欄に「HelloWorld」と入力する
5. 「Public static void main(String[] args)」にチェックをつける
6. [Finish]ボタンをクリック
7. println("Hello World!")の一行を追加する

object HelloWorld {

  def main(args: Array[String]): Unit = {}
println("Hello world")
}


8. メニュー[File]→[Save]をクリックして保存する
9. メニュー[Run]→[Run as]→[Scala Application]をクリックする
画面下のConsolにHello worldが表示されます。


これで、Scalaプログラミングの準備ができましたね。




2012年3月12日月曜日

Scalaはじめました(Early 2012)



暖かい日もあれば寒かったりとか花粉が飛びまくってたり、もうすっかり春ですね。
春は、新しいことを始めるには最適の季節と勝手に思っています。
ここ3ヶ月バタバタしたのもいったん落ち着いたのと、春なので何かしようとソワソワしていたところ、
前から気になっていたScalaに手を出してみることにしました。

Scala
http://www.scala-lang.org/

ところで、Scalaって何?
wikipediaを引用すると


Scala (スカラ、スカーラ、スケイラ、Scalable Language) はオブジェクト指向言語と関数型言語の特徴を統合したマルチパラダイムのプログラミング言語である。


だそうです。
有名どころでは、Twitterの分散フレームワーク「Gizzard」がScalaで書かれていたり、
FoursquareがScala+Lift(フレームワーク)を使っているらしい。

なぜ興味を持ったかという点ですが、
・関数型言語に興味がある
・型推論がうまく動いているらしい
・Javaのライブラリがそのまま動くらしい
・Java並みのパフォーマンスでしかも、LL言語並みに短いコードで書けるらしい
・他のLL言語よりパフォーマンスが1桁良いとか言われると・・・試したくなる。
・でもJavaは・・・。
・Scalaスケーラブルプログラミング第2版という本が気になっていた・・・。

まあ、軽い気持ちで始めますが、多くの人が書いている「なぜScalaか」を読んでいると
自分のやりたいことと同じにおいがするので、Scalaが必要になる日も近いのかも。
前置きが長くなりましたが、はじめの一歩はインストールから。


参考
http://www.scala-lang.org/node/166



Scalaインストール for OSX 10.7


▼Java環境の確認およびインストール
Scalaは、JavaVM上で動作します。そのためインストールにはjavaが必要です。
まずは、手元のMac OS X 10.7環境にインストールされているか確認してみる。


javac -version
javac 1.6.0_29


すでにありますね。いつ入れたのか覚えていませんが・・・。
インストールされていない場合は、こちらからダウンロードしてインストールします。


Java for Mac OS X 10.7 アップデート 1
http://support.apple.com/kb/HT4883?viewlocale=ja_JP


▼rootで作業します。


sudo su -


▼インストール用のディレクトリ作成


mkdir -p /usr/local/bin
mkdir -p /usr/local/share
mkdir -p /usr/local/src


▼ソースコードのダウンロードと解凍


cd /usr/local/src
curl -o scala-2.9.1-1.tgz http://www.scala-lang.org/downloads/distrib/files/scala-2.9.1-1.tgz
tar zxfv scala-2.9.1-1.tgz

※最新版はこちらから
http://www.scala-lang.org/downloads


▼scalaの設置とシンボリックリンク作成


mv scala-2.9.1-1 /usr/local/share/
ln -s /usr/local/share/scala-2.9.1-1 /usr/local/share/scala


▼rootでの作業完了


exit


▼パスを設定(OSX標準の場合、.bash_profileを作成)
vi ~/.bash_profile


if [ -f ~/.bashrc ] ; then
. ~/.bashrc
fi


vi ~/.bashrc


SCALA_HOME=/usr/local/share/scala
PATH=$PATH:$SCALA_HOME/bin
export SCALA_HOME PATH


source ~/.bashrc
▼scala REPL起動


$ scala
Welcome to Scala version 2.9.1-1 (Java HotSpot(TM) 64-Bit Server VM, Java 1.6.0_29).
Type in expressions to have them evaluated.
Type :help for more information.


試しに、


scala> 1+ 1
res0: Int = 2


動いてる。
しかし、REPL環境って遅いですね・・・。
リターンキーたたいて戻り値が1、2秒かかりますね。
もちろんJavaVM上で動いているからなんですが・・・便利な反面テンション下がります。まあ、そこはなんとか新しい言語に取り組むモチベーションでなんとかなるでしょう。

次は、エディターあたりを調べてみようと思います。
eclipseなのかな。