Re: [abc] Paper comments

From: Ganesh Sittampalam <Ganesh.Sittampalam@comlab.ox.ac.uk>
Date: Wed Sep 29 2004 - 19:41:21 BST

On Wed, 29 Sep 2004, Sascha Kuzins wrote:

> leads me to ask: where are the current source files for the document?).

There's a subversion repository for them. Ondrej sent an email about it
a couple of weeks ago.

> If most of these suggestions seem right, I'd be glad to put them in
> myself.

I've gone through and done the ones I agree with. It's embarrassing how
much better you seem to know English than I do :-) The commas I haven't
removed were mostly because I thought they did serve a useful purpose even
if there is no grammar rule that says this.

BTW, it's very helpful when trying to find comments if you give section
numbers.

Notes below:

> "abc" appears in a very large font, and the letter "c" usually gets
> placed too close to the next letter (actually, the fixed spaced font
> generally seems too large).

I'm coming to the conclusion we should just use italics, and have changed
this.

> "In particular, new features for AspectJ have been proposed that require
> extensions in many dimensions: syntax, type checking, code generation,
> as well as data flow and control flow analyses."
> =>
> "In particular, new features for AspectJ have been proposed that require
> extensions in many dimensions such as syntax, type checking, code
> generation as well as data flow and control flow analyses."

Changed the "," before "code generation" to an "and" instead.

> "abc is freely available under the GNU LGPL, and can be downloaded from
> [1]." - no comma

Done.

> "An AspectJ compiler is already a complex piece of software, which, in
> addition to the normal" - drop first comma, drop "already"

Disagree, it adds emphasis/meaning.

> "frontend and backend components for a compiler" - change to "of a
> compiler"

Done.

> "Their integration into AspectJ requires substantial changes to the type
> system, as well as the intertype weaver." - no comma

Done.

> "where aspect instances are tied to a group of objects, to express
> behavioural relationships" - no comma

Done.

> "a new type of pointcut, called predicted" - no comma

Disagree, the pause is helpful in changing the emphasis of the sentence.

> "path to a another shadow" - drop the "a"

Done.

> "flexible implementation of the type system, as well as the matchers" -
> no comma

This had already changed.

> "relatively simple develop" - add "to"

Already done.

> "should be very modular, so that the different facets" - no comma

Disagree, useful for emphasis.

> "may require relatively sophisticated analysis" - change to "analyses"

Done.

> "namely the Polyglot extensible compiler framework for the frontend
> [23], and the Soot analysis" - no comma

Disagree, useful for breaking up the sentence a bit.

> "separates the AspectJ program into a pure Java part, and instructions
> for the weaver." =>
> "separates the AspectJ program into a pure Java part and a part
> containing instructions for the weaver."

Done.

> "abc is an instance of such a workbench with a clean, extensible
> architecture." change to "We present abc, an instance..." to emphasize
> it's a contribution of the paper

Done.

> "substantial exercise in aspect-oriented software development, with the
> primary goal" - no comma

Disagree, useful for emphasis.

> "In Section 2 we first give an overview" - could use a comma before "we"

Done.

> "Next, in Section 3 we" - comma before "we"

Disagree, don't want too many commas.

> "Finally in Section 7 we" - two commas

Added one after "Finally".

> "it is easy for us, as the developers of abc itself, to update to the" -
> drop both commas

Disagree, the clause describes "us".

> "intermediate representation is a typed, stack-less, three-address
> code." - drop second comma

Disagree, it's a list of adjectives broken up by commas which help make it
digestible.

> "the weaver would need to consider the effect of the woven code on the
> implicit execution stack, and generate additional code" - no comma

Disagree, useful pause.

> "Soot first uses Polyglot to construct an AST with type information, and
> then" - no comma

Disagree, useful pause.

> "Soot builds a class hierarchy, with mere stubs for the methods" - no
> comma

Done.

> "named class pattern expressions, along the lines suggested in [6]." -
> no comma

Already changed to make this irrelevant.

> "which indicates how the each node affects the environment" - drop first
> "the"

I can't find this in the text any more.

> "stripping out all aspect-specific constructs, and storing them" - no
> comma

I can't find this in the text any more.

> "For instance, the following pointcut could be used to check that it is
> either a negative int or a negative double:" - replace "it" with "the
> argument"

Done.

> "A corresponding new type of join point shadow is added, which occurs at
> every cast instruction, whether for reference or primitive types, in the
> bytecode of a program."
> =>
> "A corresponding new type of join point shadow is added which occurs at
> every cast instruction in the bytecode of a program, whether for
> reference or primitive types."

Done.

> "and result of the cast can" - missing "the"

Done.

> "matched by the optional parameter to after returning advice" - change
> "to" to "of". Also, proceed in around advice can be used to fetch the
> value, right?

Added a remark.

> Section 5.5, listing: "protected List" - is there a space missing
> between "protected" and "List"?

If there was, there isn't any more.

> "exception handler table for a method, rather than its statements" - no
> comma

Disagree, useful for emphasis.

> "This happens just once, in the static initialiser of the class where
> the join point shadow is located." - add "namely" after comma

Done.

> "which is to directly generating code to construct these objects" -
> change to "generate"

Already done.

> "So that we can easily" - change to "To allow us to easily" (not sure
> about this, but "So" at the beginning of the sentence seems unusual)

Done.

> "we review a number of such proposals, and contrast them with the" - no
> comma

Disagree, useful pause.

> "the time has now come to disentangle the code of the base compiler from
> those of the extensions." change "those" to "that"

Done.

> "suggested an open implementation of pointcuts, to enable easy
> experimentation" - no comma

Marginally disagree.

> "We have presented abc, and its use as a workbench for experimentation
> with extensions of AspectJ." - no comma

Marginally disagree.

> "extensibility of Polyglot and Soot, from the perspective of
> aspect-oriented software development" - no comma

Disagree, useful for emphasis.

> "We now summarise their role in the extensibility of our design, and
> identify possible improvements." - no comma

Disagree, useful pause.

> "using open classes in lieu of Polyglot's delegate and extension nodes,
> to implement his recent work on predicate dispatch" - no comma

This bit has been removed.

> "The reflection route has been used with much success, in a framework
> that is very similar to Polyglot, by Hanson and Proebsting [14]."
> =>
> "The reflection route has been used with much success in a framework by
> Hanson and Proebsting [14] that is very similar to Polyglot."

Done.

> "In such cases, one needs to first weave naively, to get an
> approximation of the relevant analysis structures." - drop second comma

Made it say "in order to get..." instead.
Received on Wed Sep 29 20:03:50 2004

This archive was generated by hypermail 2.1.8 : Thu Sep 30 2004 - 01:50:02 BST