Lilantha Darshana wrote:
Paul,
I'm truly fine going with only the highly portable set of C language
(ISO C89, but not C99).
Since in general, there aren’t anything which cannot be done with C.
Advantages I see are not only the OO view of C++ (since, we can create
similar form of OO view in C using
structs and function pointers).
But it’s strong typing, name mangling which allow us taking advantage
of polymorphic behaviors,
overloading, in scope variable declaration, exception handling (even
though it is quite expensive), etc., are
really useful features.
While C++ gives all these luxuries, the problems surface if one wants a
pure C integration with axis2c.
If the ineternals use C++ stuff like exceptions, then we could always
wrap with a C interface, but obviously that has its own implications.
Wrapping C with C++ is the natural way. Hence if the core is in C, C++
users wont mind. But if the core is in C++, people who would want pure C
would mind.
As already mentioned by Sanjiva
(http://marc.theaimsgroup.com/?l=axis-c-dev&m=112797700620812&w=2) we
want to leave room for axis2c plugging in possibilities.
Thanks,
Samisa...
On Standard Library functions, we can stick to all c-versions of the
libraries (C89), instead of new C++ libs,
and of cause avoid using STL.
As and when ppl write their services in C++ (or if they already have
some good old services written in C++)
and try using them with axis2c, , I believe they might come across
similar memory problems as of now.
Since again we have to resolve the C and C++ boundary issue at the
service level.
Thanks
Lilantha
---------------------------------------------------------------------------------------------------
“C and C++: a Case for Compatibility”
http://www.research.att.com/~bs/compat_short.pdf
<http://www.research.att.com/%7Ebs/compat_short.pdf>
http://www.research.att.com/~bs/sibling_rivalry.pdf
<http://www.research.att.com/%7Ebs/sibling_rivalry.pdf>
------------------------------------------------------------------------
*From:* Paul Fremantle [mailto:[EMAIL PROTECTED]
*Sent:* Thursday, September 29, 2005 3:38 AM
*To:* Apache AXIS C Developers List
*Subject:* Re: [Axis2] Axis2 architecture implementation in C
Lilantha
We had a number of people who had problems with C++. My view is that
although C++ offers a nice OO view, it also has a number of drawbacks
- including more complex memory management model (especially when
mixing with C), lack of a completely standard libraries on EVERY
platform, compiler issues, etc.
C on the other hand is incredibly portable. And once the core model
(AXIOM) is done in C, then the benefit of OO in building the handlers
and SOAP processing model seems to me much less.
I vote with Sanjiva - I think its much easier to add C++ APIs onto a C
core than the other way around.
Paul
_______________
Siebel
IT'S ALL ABOUT THE CUSTOMER
Visit www.siebel.com
This e-mail message is for the sole use of the intended recipient(s)
and contains confidential and/or privileged information belonging to
Siebel Systems, Inc. or its customers or partners. Any unauthorized
review, use, copying, disclosure or distribution of this message is
strictly prohibited. If you are not an intended recipient of this
message, please contact the sender by reply e-mail and destroy all
soft and hard copies of the message and any attachments. Thank you for
your cooperation.