wolfmasa's blog

フロンターレとプログラミング関係の話題を、気が向いたときにつぶやくブログです。

#121 Ruby Is Not Dying, Not Yet.

121 Ruby Is Not Dying, Not Yet.

rebuild.fm

Guest

Laurent Sansonettiさんの英語の回。ただでさえ英語が苦手な自分ではあるけど、結構早く喋る人なので、余計に聞き取りが大変だった。

サポーターズプログラムでトランスクリプトを見ることができたけど、本当にこんな文字起こしを一人で作ってしまう宮川さんすごい。

(訂正:ご本人より、クレジットに記載の通り、作成者は一人ではない旨指摘いただきました。失礼しました!)

Ruby Motion, Apple

以前Appleにいて、MacRubyの開発に関わっていたという経緯から話してくれている。

Appleを辞めてRubyMotionを作る際に、1.9をフォークして作ったけど、GCをいじる必要があったり大変だった話。

RubyMotionって全く触ったことがなくてイメージしかなかったけど、微妙に最新の文法に対応できなかったりするみたいで、その辺付かず離れずが難しいのかな。

できれば、CRubyの進化に追従したいだろうし、できるところはやっているようだけど、全部というわけにはいかないのは想像に難くない。

Androidのサポートも始めたようで、RubyMotionとしては実装が複雑になるし、仕様の整合性とか、苦労していることも話していた。

TvOSとかまでサポートするのは、なんか力技ですごいなとは思うけど。

AndroidiOSのデザインやOSとしての差異についても少し言及しているけど、クロスプラットフォームにする以上、多少の差異は許容せざるをえないというのは仕方ないと思う。そのへんの抽象化についての、なかなかうまい解が見つかってない気がする。

Swift

ここでも今回のオープンソース化は素晴らしいと褒めていた。Appleにしてはというところも多分にあると思うけど、議論とか貢献もオープンになっていて素晴らしいということ。

特に話は広がらず。

React Native

RubyMotionはネイティブで実装されているので、他のブリッジテクノロジーとは違うというのは、いつもnaoyaさんも言っていること。だからできることが制限されるし、なかなか広がる技術がうまれてこないのではないか。

新しいAPIがでたら、24時間以内にRubyMotionを対応させるというのも、これだけ小さい会社がやるのはすごいというか、そこが守るべき強みなんだろうな。どうしてもクロスプラットフォームとして、いっしょくたにされがちだけど。

LLVM

bitcodeについて少し触れた。

LLVMを使っているけど、c++APIであるがゆえに後方互換性がなく、苦労して対応しているということのよう。

たぶん、LLVMをつかってネイティブコードに変換したいので、bitcodeを出力するようにRubyMotionを変更したということだと理解したんだけど、展開が早すぎて自信なし。

Ruby Kaigi, Ramen

ラーメンが大好きであることと、ヨーロッパで日本食を食べてはいけないという話。

しかし、週に6回食べたみたいで、確かによほど好きなんだろうな。

ラリーの回も最後は日本食の話だったな、そういえば。