It's the Most Wonderful Time of the Year!

Howdy.

My name is Kevin Polulak (a.k.a. soh_cah_toa) and I am one of the seven newest additions to the Parrot community. This is going to be my first Google Summer of Code. The goal of my project is to build a language-independent symbolic debugger for Parrot. My proposal can be read here.

I'm an undergraduate Computer Science major living in New Jersey, USA. I've been writing code for several years and am fluent in several languages. I am big fan of Perl which is what initially attracted me to Parrot, being the platform of choice for the upcoming Perl 6. I really enjoy low-level and systems programming and hope to work with embedded systems and operating systems some day.

Some of the features you can expect to see in the debugger are:

  • Execution control (start, stop, continue)
  • Source level and instruction level view
  • Breakpoints
    • User breakpoints
    • Conditional breakpoints
    • Single-step (step into and step over)
    • "Run-to-here" or "once-only" breakpoints
    • Finish function
  • Event detection
    • Process created/exited
    • Module loaded/unloaded
    • Data access (watchpoints)
    • Exceptions
  • Animation (continuous execution) and scripting
  • Reverse execution
  • Instrumentation/profiling with parrot-instrument
  • Backtrace
  • Bytecode disassembly

In the end, I think this is going to be a pretty neat tool that I hope will find a lot of use. I can't wait to begin!