Support for error handling by aspect-oriented programming
Markus Elfring <[email protected]> Thu, 19 Apr 2007 14:02:39 +0200
| Newsgroups | gmane.comp.programming.aspect.general |
|---|---|
| Message-ID | <[email protected]> |
Hello, The paper "On Typesafe Aspect Implementations in C++" (http://www.aspectc.org/fileadmin/publications/etaps-sc-2005.pdf) by Daniel Lohmann and Olaf Spinczyk shows an use case for the application of AspectC++ for error checking. This document contains also a clear description for the motivation where I'm also interested in to improve software dvelopment. I am looking for a solution that can be completed besides the presented Win32 API example. 1. I imagine that it needs some adjustment if it will be extended for the POSIX API because it won't be enough to filter on functions with a non-void return type. How can functions be excluded that return an input parameter as their result to enable call chaining? Examples: http://opengroup.org/onlinepubs/009695399/functions/strcpy.html http://opengroup.org/onlinepubs/009695399/functions/strcat.html 2. Are any extensions for the pointcut expression syntax in the waiting queue? 3. Is a (free) library of helper functions or corresponding function objects available? 4. The following related information sources show also interesting approaches. - "Error handling as an aspect" by Fernando Castor Filho, Alessandro Garcia and CecĂlia Mary F. Rubira http://doi.acm.org/10.1145/1229485.1229486 - Is the material from the talk "Aspectizing Design Patterns and Exception Handling: The Devil is in the Details" by Alessandro Garcia available online? http://www.cs.ncl.ac.uk/research/events/colloquia/abstract.php?id=182 - http://www.jpmdesign.net/wordpress/2005/08/27/ehi-error-handling-infrastructure/ 5. I guess that it will be a challenge to adapt such design options to programming languages like C that do not support to throw and catch exceptions as a built-in feature. Can this only be resolved with implementations of metaobject protocols? Regards, Markus _______________________________________________ discuss mailing list - [email protected] To unsubscribe and change options, go to: http://aosd.net/mailman/listinfo/discuss_aosd.net Check out the AOSD.net Wiki: http://aosd.net/wiki