The solution demonstrates a well-done solution of the case using reference attribute grammars. To be honest, I did not have the time to completely run the transformation (yet) as I am on vacation, but the results depicted in the paper look very interesting.
What strikes me from the paper is that it is very tool-centric (how does JastAdd works) whereas I understood the general question in the case study more as "what kind of benefit can your tool provide in this situation?"-thing. Therefore, I would recommend to revise parts of the paper to go more in this direction. Furthermore, the paper only shows rather glue code that appears to me as very close to Java, instead of the much more interesting pieces where the solution can make use if the clearer execution order due to attribute synthesis and what kind of benefit this brings to the problem at hand.
Therefore, my understanding of the aim of the JastAdd solution is that it tries to be the fastest manually optimizing solution where the actual optimization is drawn from previous papers and implemented in reference attribute grammars. As devils advocate, for reasons not clear (at least from the paper, but also reading the code - it is hard to compare that with an imaginary virtual Java solution).
The solution demonstrates a well-done solution of the case using reference attribute grammars. To be honest, I did not have the time to completely run the transformation (yet) as I am on vacation, but the results depicted in the paper look very interesting.
What strikes me from the paper is that it is very tool-centric (how does JastAdd works) whereas I understood the general question in the case study more as "what kind of benefit can your tool provide in this situation?"-thing. Therefore, I would recommend to revise parts of the paper to go more in this direction. Furthermore, the paper only shows rather glue code that appears to me as very close to Java, instead of the much more interesting pieces where the solution can make use if the clearer execution order due to attribute synthesis and what kind of benefit this brings to the problem at hand.
Therefore, my understanding of the aim of the JastAdd solution is that it tries to be the fastest manually optimizing solution where the actual optimization is drawn from previous papers and implemented in reference attribute grammars. As devils advocate, for reasons not clear (at least from the paper, but also reading the code - it is hard to compare that with an imaginary virtual Java solution).