From mira@ccs.neu.edu Mon Feb 9 11:16:09 1998 Received: from taboor.ccs.neu.edu (mira@taboor.ccs.neu.edu [129.10.112.115]) by amber.ccs.neu.edu (8.8.6/8.8.6) with ESMTP id LAA20371; Mon, 9 Feb 1998 11:16:05 -0500 (EST) From: Mira Mezini Received: (from mira@localhost) by taboor.ccs.neu.edu (8.8.6/8.8.6) id LAA21902; Mon, 9 Feb 1998 11:16:05 -0500 (EST) Message-Id: <199802091616.LAA21902@taboor.ccs.neu.edu> Subject: Re: more integration To: dougo@ccs.neu.edu (Doug Orleans) Date: Mon, 9 Feb 1998 11:16:04 -0500 (EST) Cc: dem@ccs.neu.edu In-Reply-To: <199802070639.BAA02300@vega.ccs.neu.edu> from "Doug Orleans" at Feb 7, 98 01:39:50 am X-Mailer: ELM [version 2.4 PL23beta2] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Status: R Hi Doug: > > Class1 { // No name-mapping yet, assume there is a class > // called "Class1". > traversal toJournal(JournalVisitor) { to Journal; } > void event1() = toJournal { > before Class1 (@ /* ... doSomethingBefore1 .. */ @) > before Journal (@ mystructure.register("Class1.event1"); @) > } > void event2(Par p) = toJournal { > before Class1 (@ /* ... doSomethingBefore2 .. */ @) > after Class1 (@ /* ... doSomethingAfter2 .. */ @) > before Journal (@ mystructure.register("Class1.event2", p); @) > } > } > > Is this roughly what you intended? Yes, this is what we roughly intended. Thank you for providing the corresponding DEM/Java pseudocode for it. It helps clarifying terms. >If so, it seems like you want to > add two things: > 1. parameterization, i.e. you can pass a strategy in and refer to > its parts with class-valued variables, rather than hardwiring > them. > 2. encapsulation, i.e. packaging the two traversals together, > arranging the code according to class rather than function, and > (potentially, but not in this example) sharing local data and > functions across multiple traversals. > > Do I have this right? Is there more to it that I'm missing? I like your formulation. It says in a very exact form how adjusters differ from adaptive methods. - Mira