Parsers, Interpreters, and YJIT with Kevin Newton

Just in case you always wanted to know what a day in the life of Andrew Mason is like, from his early wake up, his hygiene, his favorite shows, and what time he goes to bed, then you’re in for a real treat because you will find out all of this and more. And if that’s not enough, we also have a great guest joining us, Kevin Newton, who is the Staff Production Engineer at Shopify and has been doing Ruby for about ten years now. Kevin and the guys have some fantastic conversations about compilers and by the end of this episode, hopefully it will alleviate any of the anxiety you may have felt about them because it truly is some fun stuff. Jason said he feels less intimidated than he did just listening to everything Kevin talks about. Go ahead and download this episode now to learn more!

[00:05:09] Kevin gives us a brief introduction of himself. 

[00:07:33] Kevin tells us about the grant he received, and he tells us about rubyfmt and SyntaxTree.

[00:12:27] We learn why you have to do plugins in your language and why Kevin is convinced we need a new parser for Ruby.

[00:16:43] Jason wonders if prettier was Kevin’s first introduction to parsers and how he got so knowledgeable about it.

[00:17:50] Find out about Kevin’s blog post on ripper, which he calls a “very confusing library.”

[00:19:08] With the work Kevin is doing with ripper, the work he’s doing with SyntaxTree, and the grant, Jason wonders if he sees SyntaxTree getting adopted by Ruby Core one day or live as a standalone project.

[00:20:58] We find out with SyntaxTree, if Kevin has a specific Ruby version he targets or because it’s built on ripper can he just keep going back to Ruby.

[00:22:37] Kevin talks about formatting and how there’s no configuration, and also tells us about Reek.

[00:26:55] Find out about a VS Code extension for SyntaxTree using Standard.
[00:31:33] We learn about Kevin’s experiences and thoughts on Sorbet and RBS.

[00:36:41] Kevin works on YJIT at Shopify, he tells us how his experience has been since joining the team, and what his average workday looks like.

[00:42:13] Find out the benefits of Porting C to Rust and if there are any effects running that in a production application.
[00:48:47] Chris wonders what’s some of the hardest stuff on YJIT coming up.

[00:53:40] Kevin shares three great books to read if you are interested in learning more about compilers or Ruby.

[00:55:29] Find out where you can follow Kevin online.

Jason Charnes
Chris Oliver
Andrew Mason

Kevin Newton



Join our newsletter

checkmark Got it. You're on the list!
® Remote Ruby