Skip to content

Presented at DLS 2011

October 25, 2011

Today is the second day I’m attending the SPLASH 2011 conference in Portland, Oregon. This is a conference about many topics related to programming languages, virtual machines, program analysis and profiling, multi-core implementations, etc. The main reason I’m attending is that I’m actually a presenter. I gave my talk about Tachyon at the Dynamic Language Symposium (DLS) 2011 earlier today. I was fairly nervous, there were probably about 80 people in the room, but I think it went pretty well. Marc Feeley, my advisor, and Bruno Dufour gave me some good advice on how to make my presentation better and avoid getting out of breath or choking while presenting, which I believe helped. The audience seemed interested, and I got good feedback.

I’ve been able to make some contacts with researchers and industry people (and it’s not over yet, 3 more days to go). It was suggested I join the es-discuss (ECMAScript) mailing list and mention Tachyon on there, perhaps get some contributions. I also met up with my M.Sc. advisor, Prof. Laurie Hendren. Apparently, McVM, my M.Sc. project, is still being actively worked on, extended, and doing well at McGill. I’d say I’m having a pretty good time. As usual, going to conferences stimulates my creative thinking. I already have more ideas than I know what to do with…

What if…

  • A compiler could cache snippets of compiled code to speed up compilation
  • Tachyon’s register allocator could precompile specialized allocators for each instruction type using run-time code generation
  • Tachyon’s assembler could also be optimized by precompiling instruction assembling functions
  • On-stack replacement could be done purely using tail calls
  • Tachyon could be made to compile faster by generating more compact code by default (I will probably do this!)
  • Profiling hooks to detect hot functions and loops costed nothing, since they’re removed by code patching or reoptimization
  • Foreign Function Interfaces (FFIs) could be auto-generated from libraries using an elfdump style tool (based on discussions with labmate Erick Lavoie)

Sometimes, getting so many ideas at once can be scary, frustrating, even depressing, because I know I won’t be able to try them all out, and these are only a fractions of the ideas I have for Tachyon. I also realize that I have much more work to do before Tachyon really is feature-complete. My research work is still in its infancy. At least though, I know I have interesting things to do, I just have to pick which ones I’ll be doing!

I’m making the Tachyon DLS 2011 slides available online for those who are interested.

The corresponding paper, Bootstrapping a Self-Hosted Research Virtual Machine for JavaScript, is also available online. Cite us and you’ll have my eternal* gratitude.

* Up to 25 years.

Leave a Comment

Leave a comment