Working on...
- [aPetStore]
- Breakpoint
- Dynamic weaving overhead analysis
- Phoenix
- [SharpDevelop addin]
- Context-Access
|
|||||
|
|
|||||
Working on...
|
Breakpoint
What makes it so special?It's still in the preliminary stages, but the goal is to let an AOP programmer debug her "aspectualized" application without stepping into the dynamic weaver code, but being able to visually realize when an aspect is about to be applied and choose whether she wants it to be executed or not. Why on earth are you working on a debugger right now?All the work behind Breakpoint is due to Adrian Eidelman's Msc. thesis. It's basically a nice closed project to work on in order to get your degree...or so thinks Adrian. What exactly are you working on right now?SetPoint weaves (or more precisely, preweaves) by instrumenting assemblies at the IL level. When this instrumentation is done, the original pdb that shipped with the assembly (that contained all source-code-to-IL-code linking information) becomes obsolete. We are currently trying to instrument the pdb as well, so that the changes we have made to the IL code are taken into account. Why are you taking so long to do such a simple thing?Instrumenting pdb files should be easy, but it is not (at least today). The pdb format is propietary and Microsoft has only realeased a documented API to read pdb information. The (aparently) only way there is to write pdb files is by using the interface CorSym.idl which, you guessed it, is scarcely documented. Mike Stall and David Srbecky are helping us a lot in trying to tackle CorSym. Are you done once you instrumented the pdb file?Oh no, we are not. To wrap up Breakpoint, a visual debugger is needed. We definitely look forward to extending an existing visual debugger, so that it takes into account the changes we've made to the pdb and acts accordingly (e.g. by letting you enter an aspect that is about to be introduced). We're pretty sure we will base our work on the debugger David is working on for the next release of SharpDevelop. |
||||
|
Copyright 2003-2006 - The Codehaus. All rights reserved unless otherwise noted.
Powered by Atlassian Confluence
|
|||||