Summer of Code: A Generational, Thread-Aware GC for Parrot

acme on 2005-07-10T22:21:00

The Perl Foundation took part in Google's Summer of Code program and managed to get 8 projects funded. This is the second in a series of informal interviews finding out more information about these projects. Up now is Alexandre Buisse with "A Generational, Thread-Aware GC for Parrot".

Hi there! Tell us a bit about yourself, including age, where you are a student and what you are studying
Hi, I'm currently 19 years old and a french student in the Ecole Normale Supérieure de Lyon where I am finishing my first year (that's equivalent to third year of American college). I am studying computer science, with strong emphasis on theory (I aim at specialising in computability/recursion/model theory and cellular automata).

You've had a Google Summer of Code project funded. What will you be doing? How will you be doing this? What's the final product?
I will write a new Garbage Collector for Parrot which is the virtual machine of upcoming Perl 6. I will certainly make great use of the GC that is currently included in Parrot (and another one written by Leopold Tötsch but which was never finished), and also of those included in another language (mainly OCaml). The final product is a new shiny GC which should increase Parrot performance and make multi-threading much easier.

How did you get interested in this topic?
I am quite new to Perl 6 and Parrot, and that project was on the list of TPF propositions for Summer of Code. As some of my courses included GC design overview and as I like things that are quite low-level (OS design, for instance), this seemed a good idea.

Where do you see your project going after this summer?
If the GC works well, that may allow some changes in Parrot design (mainly variable-sized PMC). I also expect to have a lot of bug reports for some time, especially after multi-threading is included.

Is there any way to track your progress over the next few months? Got a blog?
I created a blog for SoC. And I think I'll use a personal source control management software (I like darcs and would like to try monotone) somewhere separated from the official Parrot svn, in order not to break it in the process :) This scm will certainly be public.

Did you expect to get funded?
I had good hopes, especially as I received quite positive feedback from leo. But I was initially rejected (and very disappointed) before getting eventually accepted (thanks to someone who was accepted for two different projects and choosed the non-perl one).

Got a silly fact about yourself or the project?
It seems that I was the 410th on google list. My acceptance was a mix of pure luck and fate :)