macにHaxe入れてみた
いわゆる、AltJSで、今後どれ使っていこうか悩んでいたりしてます(´・ω・`) とりあえず、CoffeeとTypeScriptを触ってみたんですが、あまりしっくり来ず…
今AltJSというと、だいたいこいつらだと思います。
CoffeScript (http://coffeescript.org/)
TypeScript (http://www.typescriptlang.org/)
- 実際にプロダクションで動かしてる話も結構聞くようになった、MicroSoft(というよりヘルスバーグさん)性のAltJs。型システムと型推論で、硬いコードも書けるし、JSみたいにゆるふわもできる。
- 思想は大好き。すごく書きやすい。C#erなので記法にも割りと慣れた
- そのコンパイルの遅さは欠点。型システムが導入されているので仕方ないんですけどね…でもJSはさっと書いてさっと動かしたい。
- ts.dの悪夢。きちっと使い倒そうとすると色々ハマる。大規模なら活かせるけど、小規模で型定義管理するのつらぽよ。大きいやつならいいんです、大きいやつなら。
- VisualStudioかWebStormいるよねこれ。他でもできなくはないけど、つらい。
JSX (http://jsx.github.io/)
- AltJSの新参者。DeNA製。型システム持ち。
- 他のAltJSと比較して、だいぶ素のJSに近しい。
- JSを極端に高速化しているらしく、ベンチ結果はかなりのもの
- とはいえ採用事例が…(ry 今後、極端に性能要求されるものがあったら使うかもしれない。ごめんね(´・ω・`)
Haxe (http://haxe.org/documentation/introduction/language-introduction.html)
- 歴史的には結構古い。2005年くらいから。型システム持ち。
- CoffeeScriptやTypeScriptほどではないけど、採用事例を聞くようになった。
- AltJSに分類されているものの、その実、メインストリーム張ってる言語(例えばC++とかC#とかJavaとかPHPとか)への変換も可能だったりするすごいやつ。挙句、Flashにも変換できたりします。
- 大本がActionScript界隈から出てきたものなので、ゲーム系で使われることが多い。
と、まあこれだけあるわけです。 JSXとHaxe以外は軽く触ってみて、ある程度使い勝手とか見えてきているんですが、Haxeの将来性が高そうな予感がする。
ので、これも触ってみることにして、今日のメイン。
Macにインストールする
Windowsの人は、とりあえずFlashDevelop入れれば解決する。 Macの場合は、IDE以外にvimとかSublimeとか使うことを考慮して、Haxeのシステム自体を導入してしまいます。
Homebrew
でインストールできたので楽ちんです。
~$ brew info haxe haxe: stable 3.1.3 (bottled), HEAD http://haxe.org /usr/local/Cellar/haxe/3.1.3 (1619 files, 19M) * Poured from bottle From: https://github.com/Homebrew/homebrew/blob/master/Library/Formula/haxe.rb
最初、何も考えずにHomebrew叩くとこんなエラーが…
brew install haxe objective-caml: Unsatisfied dependency: XQuartz 0.0.0 Homebrew does not package XQuartz. Installers may be found at: https://xquartz.macosforge.org Error: An unsatisfied requirement failed this build.
これだけみても、良く分からないんですが、Unsatisfied dependencyといっているので、おそらく依存関係になにか問題があるように見えます。
そこで、おもむろに...
brew update && brew upgrade
とかやります。
その後でbrew install haxe
とかするとすんなり入ってくれました。
単純にHomebrewが古かっただけのようです。同じエラーに引っかかった時は、まずHomebrew更新するとよろしいかと(`・ω・´)