send のあとの後続の pop が省略できない時があるからこれもフラグを付けた。

C で書かれた部分は Ruby 側からは何も出来ないが、フラグは渡すようにしていて、C 側で将来的にどうにかできるようにした。

2016 年の段階では函数単位で pure かどうかを判定してスキップするみたいなことを話していたが、今回は関数内末尾でスキップする。

メソッド呼び出しのたびに返り値を使うかどうかを 1bit のフラグとして渡すようにする。

函数の返り値を使わずに捨ててるところを最適化する。

Ruby をコンパイルしたらインストラクションシーケンスで send-pop という形にコンパイルされることがある。

ActiveRecord 的には tzinfo という Gem を使っていて、別の timezone という Gem でも夏時間を対応している。

IANA tz database には Timezone の規定がないのもあって Ruby 標準に入ってない。

Ruby の Time クラスは UTC とシステム依存の Local time がある。

1.9.2 から Fixed Offset がある。
Time.new(2019, 4, 20, 15, 40, 00, "+09:00")

IANA で tz database として Timezone for Database があるのね。

RubyGems 4 から User ディレクトリに入れるのをデフォルトにしたい!

ただ GitHub の bundler リポジトリからチェリーピックしている状態。

Rails 2.6 からは default gems にになっているから bundler が入っている。

Bundler を RubyGems に入れちゃいたい。

もっと見る
Kimamass Social

Kimamass の情報をいち早くチェック!