最近窓にすだれを取り付けました。@kyo_agoです。

2015/07/14に社内でScala.jsの勉強会を開催しました。

Scala.jsはまだ社内でも知見が少なく、割と突発的なイベントだったのですがなかなか濃い内容になったのでレポートしたいと思います。

Scala.jsとは

Scala.jsとは、Scalaで書かれたコードをJavaScriptに変換して実行できるようにするコンパイラです。

開発は2011/12/31から始まっており、2014年に入ってから話題になってきたようです。

形式

何人かが資料を作って持ち寄り、随時発表をする形式で行いました。

登壇者

「TypeScript経験2年(Scala経験0)」から「Scalaはソースまで読んでる(JavaScript経験0)」まで幅広く、多彩な発表で非常に盛り上がりました。

内容

ざっくりこんな感じの話でした。

  • Scala.jsの何がつらいか
  • sbtをどう理解すればいいのか
  • sbt昔話
  • sbtでJavaScriptのライブラリを管理する方法
  • Isomorphic。同型(矢印)
  • TypeScriptとの比較
  • 出力後のJavaScriptコードの読み方
  • Scala.jsのコンパイルオプション紹介
  • Scala.jsをsbtなしで使う方法
  • JavaScriptからScala.js内で定義したfunctionを呼び出す方法
  • 情報の探し方
  • Activatorとの連携方法
  • エディタはどうすべきか
  • npmとの連携方法
  • JavaScript側から入門したい場合どこから入ったらいい?
  • JavaScript側のエコシステムに載せるには?
  • JavaScriptとScalaの言語としての比較
  • Scala.jsでフロントエンド入門してみた
  • HelloWorldが書けたのでFreeモナドを書いてみた
  • Coyonedaも動かしてみた。Shapelessも動くとか
  • Scala.jsでリバーシを実装してみた
  • Scala.jsのテスト事情
  • DOMやJavaScriptライブラリとScala部分との連携
  • 二槽式アーキテクチャの紹介
  • Scala.jsの制限
  • Scala.js自体のリスク
  • Scala側から見たScala.jsのポジション
  • JavaScript側から見たScala.jsのポジション

感想

基本的に非公開前提の勉強会だったのでほんとにざっくりした内容で申し訳ないです。

JavaScript経験者から「Scala界から見たScala.jsのポジションがわかった」、Scala経験者からすると「JavaScript側のエコシステムがわかった」との声がありました。

個人的にはScala使いの人が「これなら本気出して大丈夫」と言っていたのが印象的でした。

もし興味がある内容があれば勉強会に参加したメンバーの多くが2015/08/01のScala関西 Summit 2015に参加するため、捕まえていただければお答えできると思います。

もしくは採用情報からどうぞ!