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.


Reply via email to