Scalaハッカソン@NSビルに行ってきました

開始の1時間くらい前にネットで開催情報をゲット 会場はNSビルとのことで、家から徒歩10分くらい。 ATNDみたら申し込めたので行ってみる。

Ubuntuと迷ったけど、いい加減もっと慣れないとなと思って、 MacBookをもっていく。 #TerminalCopyOnSelectとか入れたり #(Snow Leopard版のTerminalCopyOnSelect.bandleを SIBMLのPluginsディレクトリ配下に)、 #US配列だとあのキーどこー?とか、 #面倒だったけど、こういう機会があるといろいろ覚える。

Scalaの環境を整える。 とりあえずJavaは新し目のヤツが入ってたから、それをそのまま使う ==== $ java -version java version "1.6.0_15" Java(TM) SE Runtime Environment (build 1.6.0_15-b03-219) Java HotSpot(TM) 64-Bit Server VM (build 14.1-b02-90, mixed mode) ====

で、scalaのランタイムを落とす。 ==== wget http://www.scala-lang.org/downloads/distrib/files/scala-2.7.7.final.tgz ==== って普段ならやりたいところ、MacBookwgetできなかったので、 普通に公式ページからブラウザ経由で落としてきて入れる

パスを通す ==== $ vi ~/.bash_profile export LANG=ja_JP.UTF-8 export SCALA_HOME=/Users/eshinohara/Downloads/scala-2.7.7.final export PATH=$SCALA_HOME/bin:$PATH export _JAVA_OPTIONS="-Dfile.encoding=UTF-8" ====

で、scalaコマンド叩くと。。なんかシェルモードになったす! ==== $ scala Welcome to Scala version 2.7.7.final (Java HotSpot(TM) 64-Bit Server VM, Java 1.6.0_15). Type in expressions to have them evaluated. Type :help for more information. scala> ====

で、HelloWorldしたくてたまらない。。 ==== vi HelloWorld.scala object HelloWorld { def main(args: Array[String]) { println("Hello Scala World!") } } ====

で、コンパイル。 ==== $ scalac HelloWorld.scala ====

実行する、と。 ==== $ scala -cp . HelloWorld Hello Scala World! ====

NetBeansをインストール。 ↓ここからフルフルのやつを落としてくる ==== http://netbeans.org/downloads/ ====

Scalaプラグインのインストール。 一番最新の6.8だといろいろ足りないって怒られるので6.7のzipを解凍して↓ ==== http://sourceforge.net/projects/erlybird/files/nb-scala/6.7v1/nb-scala-6.7v1.zip/download ==== ツール→プラグインから解凍したzipの中身を選択して突っ込む

NetBeansScalaプロジェクト作ると、↓こんなんがもうできてるので、 ==== package scalaapplication1 object Main { /* * @param args the command line arguments / def main(args: Array[String]) :Unit = { println("Hello, world!") } } ====

実行すると↓こんな感じ ==== init: deps-jar: Compiling 1 source file to /Users/eshinohara/NetBeansProjects/ScalaApplication1/build/classes compile: run: Hello, world! ====

あとは対話型シェルで↓に従いながら、 ==== http://dl.dropbox.com/u/261418/scala-hackathon/index.html ==== トレイトとかクロージャとか末尾再帰でスタックオーバーフローしないとかを、 ほえぇーって動かしてたら終わってしまいました。 #なんつーか、頭やらかくないとダメそうですね。関数型言語

最後に主催のyuroyoroさんによるサンプルアプリの講義を聞いて、 カリー化とか、なるほどねっていう。

ハッカソンなのに何もアウトプットを残せなかったのが。。 って、何の前提知識も無しに行ったので仕方ないよねっていうw

ただ、家にいてゴロゴロしながら何もしないよりは、 参加費の1300円払って、こうやって手を動かしてる方が、 何倍も価値があるよなと思うので、行ってよかったです。

-- 会場はこんな感じでした。3人がけの椅子に2人ずつって感じ。 ほとんど話し声は聞こえず、みんな黙々とやってました。 IMG_0414

腹減っちゃって、途中マックで100円のバーガー食ったり、 IMG_0415

NSビルのクリスマスツリーがライトアップされてたり、 IMG_0417

隣の会議室がP&Gの就活のセミナーだったらしく、 スーツきた若者がたくさんいました。 彼らは我々の事を何の集団だと思ってみてたんだろうなと ちょっと気になりましたw

-- 懇親会は、ここのところ、ちょっと飲み過ぎなので自粛しました。。

Scalaスケーラブルプログラミング[コンセプト&コーディング] (Programming in Scala)
Martin Odersky Lex Spoon、Bill Venners
インプレスジャパン
売り上げランキング: 7727
おすすめ度の平均: 4.5
3 初心者の入門書としては高度すぎる
5 ポストJavaを求める人向けです
5 Scalaのバイブルたる本です。
5 すべて道がscalaに通じていた