InfoQ

Interview

Wilson Bilkovich Discusses Rubinius

Interview with Wilson Bilkovich by Werner Schuster on Feb 17, 2008

Community
Ruby
Topics
Performance & Scalability ,
Language
Tags
Rubinius ,
Virtual Machines ,
RubyGems
Summary
Wilson Bilkovich is one of the core developers of the Rubinius project - a Ruby implementation written in Ruby. Wilson is also one of the members of the Ruby Hit Squad, developers of the deployment automation tool Vlad the Deployer. In this interview with InfoQ, Wilson discusses the implementation of Rubinius, and its current status with Werner Schuster.

Bio
Wilson Bilkovich is one of the core developers of the Rubinius project - a Ruby implementation written in Ruby. Wilson is also one of the members of the Ruby Hit Squad, developers of the deployment automation tool Vlad the Deployer. Wilson blogs at http://metaclass.org/
We are here at Ruby Conf 2007. I am sitting here with Wilson Bilkovich. How about we start with you introducing yourself and tell us a bit about what you do?
Let's start with Rubinius. How did you get involved with the Rubinius project?
Can I just interject: what's a CPU? And what does a CPU.new object mean in Rubinius is that like one core, a thread, a process?
So, what's the current state of Rubinius and threading? What's your approach? Which of these approaches do you have, an Erlang approach? I saw something about the actor library by MenTaLguY I think that is his name.
Are you planning to do multiple implementations, could there be exchanged at runtime or at compiler time or what's the plan, what's the situation now or for 1.0?
Going back to your involvement with Rubinius what was the first thing you contributed? What was the first you committed, the first thing you looked at in Rubinius at home after Ruby Conf?
How was the first compiler implemented? What were you using? Were you using Ruby or C code?
Do you have an example for that?
Could you maybe explain some of the passes that the compiler goes through?
Maybe you could explain the format that you get the parse tree in is the Ruby parse tree library by Ryan Davis.
Do you know which VM architecture the VM is based on? Is that Smalltalk, the byte code or the instructions are Smalltalk like?
It's available online partly.
Can you give us the title? Do you remember it?
So primitives are a kind of API of the VM? Is that correct?
The Ruby base implementation of the standard libs like the access file system call , they call these primitives. Is that it or both?
You mentioned that there was the old compiler that you were just talking about. This is the new compiler. Can you give us a quick overview for this?
Can you say, did you keep most of the old logic that compiled the byte code and mostly this was a structural change? Is that a way to put it or not?
That was a lot of Rubinius stuff. I mean when you were not focused on Rubinius you also do a lot of other work. For instance you are part of the Ruby Hit Squad. Can you give a quick explanation what you do and what government you work for?
Is the development going on? Will you change it, fix it? Will you have another little meeting?
Distributed version systems?
Before we wrap up I would also like to mention that you also work for the RubyGem project the package management. I think you were recently involved in a rewrite that should make many people happy, speed up the index performance. Could you quickly say what you did there?
show all  show all

No comments

Watch Thread Reply

Educational Content

Brian Marick on 4 Challenges and 5 Guiding Values of Agile Software Development

Brian Marick takes us through a quick tour of the most important values and challenges to adopting Agile successfully (they aren't the typical challenges and values we hear in the community).

Are You a Software Architect?

The line between development and architecture is tricky. Does it exist at all? Is an ivory tower actually needed? There's a balance in the middle, but how do you move from developer to architect?

Agile – A Way of Life and Pragmatic Use of Authority

The word 'authority' sometimes produces an allergic response in hard-line agilists. Freedom and authority – both are bad if misused and both are good if used in right spirit for a noble cause.

Getting Started with Grails, Second Edition

"Getting Started with Grails" brings you up to speed on this modern web framework. Companies as varied as LinkedIn, Wired, and Taco Bell are all using Grails. Are you ready to get started as well?

Using ITIL V3 as a Foundation for SOA Governance

Those familiar with only ITIL V2 often scoff at the thought that ITIL could serve as a governance framework for SOA. With ITIL V3, the focus of the framework shifted towards service-orientation.

Adrian Colyer on AspectJ, tc Server and dm Server

SpringSource CTO Adrian Colyer discusses AspectJ, SpringSource's dm Server and tc Server products, OSGi and Scrum.

Adam Wiggins on Heroku

Heroku's Adam Wiggins talks about Rails, Background Jobs, Add-Ons, Ruby, and how Heroku manages to work around Ruby's inefficiencies using Erlang and other languages.

SOA as an Architectural Pattern: Best Practices in Software Architecture

For Grady Booch the foundation of a good architecture is patterns, SOA being just one of many patterns. In this Second Life presentation, Booch attempts to bring more clarity on what architecture is.