Today marks the last day of work I have before this year's Google Summer of Code project starts on Monday the 26th. I'm away all weekend, and so I need to get my prep work done now so I can hit the ground running next week. I still need to talk to chromatic a little bit and finalize details of the algorithm to make sure I'm running in the right direction.
I've been in regular contact with chromatic about this project, and he's been feeding me a list of papers to read about GC. I was hardly an expert before all this, but I'm certainly moving in that direction now! With school over, my access to free printing and free database access has disappeared, so I can only hope I read enough.
This morning I created a branch in the Parrot svn repository to hold my work. The benefit to having a branch is that I can make all the mistakes I want without affecting the rest of the project. The link to the branch is here:
https://svn.perl.org/parrot/branches/gsoc_pdd09/
A few weeks ago, I switched from Windows to Linux, and it's been hectic for me to become familiar with all the necessary development tools on this platform. I've been practicing my svn-foo, and I've been refamiliarizing myself with the all-important shell.
My editor of choice, so far, is medit. It's lightweight, provides some basic syntax highlighting, and doesn't get in my way. I may switch to a different editor eventually. SciTE, for one, is very reminiscent of the notepad++ editor I had been using on Windows, but has a few disappointing feature omissions that make it significantly less attractive then it's windows-based cousin. I tried Notepad++ through wine, but the performance was poorer then I could deal with. For the second time in my life I've tried to get acquainted with some of the iconic GNU/Linux programming editors: Vim and Emacs. Try as I might, I just can't wrap my mind around them.
As much as the command-line is the de facto programming environment on Linux, I'm always more comfortable with a good GUI. My SVN client at the moment is RapidSVN, although I've been looking at SVN Workbench as well. I've been bumbling around with the command-line svn, patch, and diff utilities as well, and will probably have to resort to them on occasion. It's always good to have a backup.
I've done a little perl work so far, but I haven't developed any C code on Linux yet. I'm interested to see how that will go. I'm not unfamiliar with GCC, but I am unfamilar with GDB and valgrind and all the other cool tools that i'm going to need to learn to use here. It's going to be a trial by fire, but if school has taught me anything, it's that I'm capable of learning cool new things like this.