On 08/12/14 12:13, Mark Rotteveel wrote:
> <53e9b621.5050...@mail.ru>
> Message-ID: <e1539af719bd359c5254c41730071...@imap.procolix.com>
> X-Sender: m...@lawinegevaar.nl
> User-Agent: RoundCube Webmail/0.2
>
> On Tue, 12 Aug 2014 10:37:21 +0400, Alex Peshkoff <peshk...@mail.ru>
> wrote:
>> On 08/11/14 22:29, Tom Coleman wrote:
>>> I interface a proprietary language with Firebird, Oracle, and
>>> Sybase/MS-SQL.
>>>
>>> There is never any case where I would want to see std:exception.
>>>
>>> Could it be time to start thinking about burying this idea that is
>>> looking more and more like a sacred cow?
>> Tom if _you_ do not want to use one of the most powerful features of
>> programming languages, please do not suggest others not to use it.
> I think these types of response are not constructive and only serves to
> alienate people.

That was an answer to 'sacred cows'.

> Please keep in mind that apart from the core developers, everyone here is
> discussing as an external consumer of this API. And unfortunate as that may
> be, an API for external consumption by disparate systems should cater to
> the lowest common denominator; and unfortunately that seems to be a C API
> (or in my case: the wire protocol *and* the C API).
>
> The fact that the Firebird core team prefers to use a C++ abstraction
> inside Firebird is an entirely different discussion. By all means: use a
> C++ API internally, but external exposure of this API - unless a better
> solution comes up (and I still haven't read the entire discussion so I may
> have missed something) - must be as simple as possible

But that is exactly what we suggest...

> and preferably
> 'industry-standard' (for whatever that is worth), which means C and not
> some complex and - probably - undocumented home-brew calling mechanism that
> makes life hard for consumers of the API.
>
> The main point of an API is to allow developers to *use* Firebird, so
> please do not alienate those users as their concerns are valid and should
> be taken into account. And if people already using Firebird voice those
> concerns, what do you think happens if people evaluate Firebird for use? If
> the choice is between a legacy API that doesn't expose all (modern)
> features of Firebird or a C++ API that is only really usable from C++ or
> requires catering to the demands of some weird calling mechanism (note: I
> am exaggerating), then they'd probably take their business elsewhere.

Suggested approach makes it possible to automatically generate C API 
based on C++ API. This code will be certainly entirely C++ itself, but 
will make it possible to automatically expose part of new API as plain-C 
functions.


------------------------------------------------------------------------------
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel

Reply via email to