#121 Ruby Is Not Dying, Not Yet.
121 Ruby Is Not Dying, Not Yet.
Guest
Laurent Sansonettiさんの英語の回。ただでさえ英語が苦手な自分ではあるけど、結構早く喋る人なので、余計に聞き取りが大変だった。
サポーターズプログラムでトランスクリプトを見ることができたけど、本当にこんな文字起こしを一人で作ってしまう宮川さんすごい。
(訂正:ご本人より、クレジットに記載の通り、作成者は一人ではない旨指摘いただきました。失礼しました!)
Ruby Motion, Apple
以前Appleにいて、MacRubyの開発に関わっていたという経緯から話してくれている。
Appleを辞めてRubyMotionを作る際に、1.9をフォークして作ったけど、GCをいじる必要があったり大変だった話。
RubyMotionって全く触ったことがなくてイメージしかなかったけど、微妙に最新の文法に対応できなかったりするみたいで、その辺付かず離れずが難しいのかな。
できれば、CRubyの進化に追従したいだろうし、できるところはやっているようだけど、全部というわけにはいかないのは想像に難くない。
Androidのサポートも始めたようで、RubyMotionとしては実装が複雑になるし、仕様の整合性とか、苦労していることも話していた。
TvOSとかまでサポートするのは、なんか力技ですごいなとは思うけど。
AndroidとiOSのデザインやOSとしての差異についても少し言及しているけど、クロスプラットフォームにする以上、多少の差異は許容せざるをえないというのは仕方ないと思う。そのへんの抽象化についての、なかなかうまい解が見つかってない気がする。
Swift
ここでも今回のオープンソース化は素晴らしいと褒めていた。Appleにしてはというところも多分にあると思うけど、議論とか貢献もオープンになっていて素晴らしいということ。
特に話は広がらず。
React Native
RubyMotionはネイティブで実装されているので、他のブリッジテクノロジーとは違うというのは、いつもnaoyaさんも言っていること。だからできることが制限されるし、なかなか広がる技術がうまれてこないのではないか。
新しいAPIがでたら、24時間以内にRubyMotionを対応させるというのも、これだけ小さい会社がやるのはすごいというか、そこが守るべき強みなんだろうな。どうしてもクロスプラットフォームとして、いっしょくたにされがちだけど。
LLVM
bitcodeについて少し触れた。
LLVMを使っているけど、c++のAPIであるがゆえに後方互換性がなく、苦労して対応しているということのよう。
たぶん、LLVMをつかってネイティブコードに変換したいので、bitcodeを出力するようにRubyMotionを変更したということだと理解したんだけど、展開が早すぎて自信なし。
Ruby Kaigi, Ramen
ラーメンが大好きであることと、ヨーロッパで日本食を食べてはいけないという話。
しかし、週に6回食べたみたいで、確かによほど好きなんだろうな。
ラリーの回も最後は日本食の話だったな、そういえば。