[aosd-discuss] Support for error handling by aspect-oriented programming
Markus Elfring
Markus.Elfring at web.de
Thu Apr 19 08:02:39 EDT 2007
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
More information about the discuss
mailing list