[HN Gopher] How I developed a faster Ruby interpreter (2022) ___________________________________________________________________ How I developed a faster Ruby interpreter (2022) Author : cyrc Score : 70 points Date : 2023-05-10 10:46 UTC (12 hours ago) (HTM) web link (developers.redhat.com) (TXT) w3m dump (developers.redhat.com) | Conscat wrote: | I got excited thinking there was a new article about MIR, but | this is an old post. | sparker72678 wrote: | (2022) | dang wrote: | Added. Thanks! | wiseowise wrote: | > YJIT was initially written in C but was rewritten in Rust to | simplify the porting of YJIT to new architectures. | | Curious. Why is that? | Veliladon wrote: | Shopify have a full rundown on it here: | | https://shopify.engineering/porting-yjit-ruby-compiler-to-ru... | norman784 wrote: | I don't remember exactly all the details, but the issue was | something with developing for multiple platforms, with Rust you | have traits, so it's easier to implement platform specific | stuff with them, with C I don't know if there's anything | similar, also you can think of all the other benefits that Rust | brings. | | From my experience once you learn Rust, it is very easy to | build things and being confident that if it compiles it works, | I think C also scares a lot of developers and it's harder to | collaborate, because each code review must be carefully review | by having a mental model of the entire app, while in Rust | obviously that's the job of the compiler. | djbusby wrote: | With C its macros and #define blocks. Not that fun. | irq-1 wrote: | Author is Vladimir Makarov creator of MIR: "a universal | lightweight Just-in-Time (JIT) compiler known as MIR. The | cornerstone of the project is a machine-independent medium-level | intermediate representation (MIR)." | | https://github.com/vnmakarov/mir | | https://en.wikipedia.org/wiki/Intermediate_representation ___________________________________________________________________ (page generated 2023-05-10 23:01 UTC)