← Back to team overview

coapp-developers team mailing list archive

Re: Code?

 

Let me try to clear this up.

I would prefer C++ as well, but C++ drags in baggage--and potentially a lot of it.

Since you need the C++ functions out of MSVCP90/MSVCP100 (either statically linked or dynamically linked) in order to use things like the new operator, exception handling, and pretty much any C++ features, that causes us to either take at best a  40k-50k static dependency, or drag the C++ runtime along (NO WAY!).

Both are quite unpalatable.  With a 50k static dependency, this would drastically increase the size of the DLL, and with only a marginal improvement in development productivity.

By limiting ourselves to C, and using dynamic libraries found on the system by default, we come free of baggage and can keep the size of the DLL very, very low.

G

Garrett Serack | Open Source Software Developer | Microsoft Corporation 
I don't make the software you use; I make the software you use better on Windows.

-----Original Message-----
From: coapp-developers-bounces+garretts=microsoft.com@xxxxxxxxxxxxxxxxxxx [mailto:coapp-developers-bounces+garretts=microsoft.com@xxxxxxxxxxxxxxxxxxx] On Behalf Of Olaf van der Spek
Sent: Tuesday, May 18, 2010 3:07 AM
To: Elizabeth M Smith
Cc: coapp-developers@xxxxxxxxxxxxxxxxxxx
Subject: Re: [Coapp-developers] Code?

On Tue, May 18, 2010 at 1:38 AM, Elizabeth M Smith <emsmith@xxxxxxxxxxxxxxxxxxxxxxx> wrote:
>> C++ can do C bindings as well, can't it? Our bindings should 
>> C++ certainly be
>> C.
>> Doesn't C++ share the other advantages?
>>
>> Olaf
>>
>
> What?  I mean binding coapp to other higher level languages primarily 
> written in C.  Perl, Python, PHP, Lua, D etc.
>
> and if we write it in C - yes a C++ binding would be easy as well.

Obviously our API and ABI will be C. This doesn't mean the implementation has to be C as well, right?

Olaf

_______________________________________________
Mailing list: https://launchpad.net/~coapp-developers
Post to     : coapp-developers@xxxxxxxxxxxxxxxxxxx
Unsubscribe : https://launchpad.net/~coapp-developers
More help   : https://help.launchpad.net/ListHelp

References