[FoRK] Versioned Literate Aspect-Oriented Programming

James Tauber jtauber at jtauber.com
Mon Mar 15 13:56:31 PST 2004

On Mon, 15 Mar 2004 10:13:38 -0500, "Stephen D. Williams" <sdw at lig.net>
> Extreme/Agile makes the assumption that you would refactor rather than 
> add aspects.  I see a need for both; only good foresight can make room 
> for the latter.

I definitely think refactoring is another aspect (no pun intended) that
would need to be included. Thanks for reminding me of it.

I wouldn't compare refactoring with adding aspects, though, given the
former is not about adding functionality and, at least in my context, the
latter is.

But maybe I'm overstating the value of AOP for a project like this. I
guess I'm more generally thinking of distinctly called-out additions (and
deletions) to various points of code with the purpose of adding a single
unit of functionality. In some cases you could indicate in advance where
those points are but in many cases not.

The key is that at one point you need to say that a particular class has
certain methods and later on in the literate program you need to say
you've added some methods and added (or removed) particular code. This is
where I suspect current literate programming systems fall down for this
kind of project. For something like what I'm talking about one would need
the ability to indicate an insertion, deletion or (at the very least) a
replacement with perhaps the weaving including a code diff in the


> James Tauber wrote:
> >As I've been developing my first Eclipse GEF (Graphical Editor Framework)
> >application, I've been thinking about turning it into a tutorial. I
> >immediately wondered if it might be a great project for literate
> >programming. 
> >
> >I could write a web and then tangle it to generate the GEF application
> >and weave it to get the tutorial. But as features are incrementally added
> >to the application over the course of the tutorial, conventional literate
> >programming might not be enough. At the very least, some kind of
> >versioning would need to be included. 
> >
> >But then it occurred to me that it's perhaps best thought of not just as
> >a versioning issue but as an aspect-oriented one. For example, if step
> >four of the tutorial is adding undo support then that would involve not
> >only new classes but the insertion of code at points in existing methods. 
> >
> >Anyone come across anything like this before?
> >
> >James
> >  
> >
> -- 
> swilliams at hpti.com http://www.hpti.com Personal: sdw at lig.net
> http://sdw.st
> Stephen D. Williams 703-724-0118W 703-995-0407Fax 20147-4622 AIM: sdw
  James Tauber

More information about the FoRK mailing list