2019年度Rubyアソシエーション開発助成金成果報告 2019年度に採択されたプロジェクトの応募者による最終報告書及びメンターによる報告書を掲載致します。 複数ファイルに対応したプリコンパイル機構の作成 プロジェクト概要 RubyVMの中間表現であるISeqはバイナリ表現と相互に変換することができ、Rails 5.2以降でプロジェクトにデフォルトインストールされるBootsnapはそのバイナリ表現をキャッシュしておくことでアプリケーションの起動速度を改善している。 しかし、Bootsnapが行っているのは.rbファイルごとのキャッシュであり、gemやプロジェクトといった複数ファイルからなる単位でキャッシュを行うことはできない。 また、Rubyインタプリタが起動時にロードする一部のgemはBootsnapの初期化前に読み込まれるため仕組み上キャッシュされない。 本プロジェクトでは、MRIの