It would already benefit from an Object Oriented design approach.
However the cost of a rewrite does not justify the benefits.
There is no perfect approach, they all have advantages and disadvantages.
It would very interesting of cources to rewrite ROBODoc and learn about
aspect oriented programming, but at the moment time is very valuable
it is better to spend it on fixing bugs and refactoring the current code.
Thanks for the link though, it's an interesting approach.
Have fun,
Frans.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
The maintenance costs depend on the refactoring if enough source code will be found that can be extracted into explicit aspect specifications (pointcuts). Each aspect variant should be specified once and applied multiple times to different places in the source files.
How do you think about to perform any mining for them?
While I agree that this technique looks very promising (and interesting) it also seems to be still in a very
immature state. Many of the implementations mentioned on the wikipedia page seem
to not be released (http://www.cs.ubc.ca/labs/spl/projects/aspectc.html), in alpha,
or inactive (http://luaforge.net/projects/aspectlua/). Only for Java and #C there seems
to be propper support.
Given that my spare time is a scarse resource I will not follow this path.
Very interesting stuff though.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Logged In: YES
user_id=43395
Originator: NO
It would already benefit from an Object Oriented design approach.
However the cost of a rewrite does not justify the benefits.
There is no perfect approach, they all have advantages and disadvantages.
It would very interesting of cources to rewrite ROBODoc and learn about
aspect oriented programming, but at the moment time is very valuable
it is better to spend it on fixing bugs and refactoring the current code.
Thanks for the link though, it's an interesting approach.
Have fun,
Frans.
Logged In: YES
user_id=572001
Originator: YES
How do you think about to extract pointcuts and advices from the source files as an refactoring activity?
http://aosd.net/wiki/index.php?title=Mining_and_Refactoring
Logged In: YES
user_id=43395
Originator: NO
Most of the tools mentioned seem to be for Java.
However XWeaver, although it does something completely different seems to be very interesting.
Logged In: YES
user_id=572001
Originator: YES
Would you like to cooperate with the following tool alternatives?
1. http://aspectc.org/
2. http://research.msrg.utoronto.ca/ACC
3. http://www.cs.ubc.ca/labs/spl/projects/aspectc.html
4. http://wwwiti.cs.uni-magdeburg.de/iti_db/forschung/fop/featurec/
5. http://users.ugent.be/~badams/aspicere2/
Logged In: YES
user_id=572001
Originator: YES
The maintenance costs depend on the refactoring if enough source code will be found that can be extracted into explicit aspect specifications (pointcuts). Each aspect variant should be specified once and applied multiple times to different places in the source files.
How do you think about to perform any mining for them?
Examples:
1. http://citeseer.ist.psu.edu/vandeursen03aspect.html
2. http://www.eecg.toronto.edu/~czhang/prism/
3. ftp://prog.vub.ac.be/tech_report/2006/vub-prog-tr-06-31.pdf
4. http://www.st.cs.uni-sb.de/softevo/aspects.php
5. http://doi.ieeecomputersociety.org/10.1109/SCAM.2005.9
6. http://star.itc.it/ceccato/papers/2005/iwpc2005.html
7. http://msr.uwaterloo.ca/msr2007/index.html
8. http://www.cis.uab.edu/tairasr/clones/literature/#aspects
Logged In: YES
user_id=43395
Originator: NO
While I agree that this technique looks very promising (and interesting) it also seems to be still in a very
immature state. Many of the implementations mentioned on the wikipedia page seem
to not be released (http://www.cs.ubc.ca/labs/spl/projects/aspectc.html), in alpha,
or inactive (http://luaforge.net/projects/aspectlua/). Only for Java and #C there seems
to be propper support.
Given that my spare time is a scarse resource I will not follow this path.
Very interesting stuff though.
Logged In: YES
user_id=572001
Originator: YES
I hope that the corresponding design options can be considered again in the near future ...
Logged In: YES
user_id=43395
Originator: NO
Will do. It is too interesting to not use :)
And I think with some perl script magic the weaving can
be done without having to rely on a propper tool for C.