Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Replace RipperRubyParser with Prism for DescendantLoader
RipperRubyParser isn't really maintained anymore whereas Prism is soon becoming the replacement official Ruby parser. Prism already has a RubyParser translation layer internally, which is fully maintained. Additionally, the performance of Prism is much faster than Ripper. Performance testing DescendantLoader: Cached sti_loader? | Measurement | Time (s) ------------------ | ---------------------- | --------------------- (Ripper) No cache | Vm.descendants | 15.303 (Prism) No cache | Vm.descendants | 4.093 (73% faster) (Ripper) No cache | evm:compile_sti_loader | 20.120 (Prism) No cache | evm:compile_sti_loader | 8.216 (59% faster) (Ripper) Cached | Vm.descendants | 0.554 (Prism) Cached | Vm.descendants | 0.583 (same) (Ripper) Cached | evm:compile_sti_loader | 3.271 (Prism) Cached | evm:compile_sti_loader | 3.138 (same)
- Loading branch information