Boost logo

Boost :

From: Ames Andreas (Andreas.Ames_at_[hidden])
Date: 2006-10-09 06:18:18


> -----Original Message-----
> From: boost-bounces_at_[hidden]
> [mailto:boost-bounces_at_[hidden]] On Behalf Of Robert Ramey
> Sent: Sunday, October 08, 2006 11:35 PM
> Subject: Re: [boost] Boost libraries after C++0x acceptance
>
> Given a library for which there exists a free reference
> implmentation in
> terms of
> legal C++ language syntax, what value is gained by adding it to some
> standard?
>
> If there value, is it worth the cost?

In an ideal world, I think, the answer would be none, no. In practice
things are different.

1) From the user's perspective: Very few people seem to choose
languages because of syntactical purity (think Perl) or e.g. the power
of control it provides to you (manual memory mangement, pointers etc.).
The deciding factor often seems to be the availability of a standard lib
(Java, .Net). Most needed things are in place when the user installs a
'development environment', no need to search the web on and off, much
better access to secondary literature (how many books are available about
boost libs compared to books about the STL, Java SDK ... One could
ask now, why it is more rewarding to authors to write books about
'standard libs' than about 'free reference implementations').

A standard lib might also offer some sort of protection from vendor
specific derivations (esp. when there exists a monopoly) i.e. there is
not yet something like a 'Microsoft C++'.

2) For the lib developer(s): Being accepted into the standard lib
flatters their vanity (no valuation intended here), may improve job
offerings and other earnings etc. This could possibly be deduced
from 1) above.

3) From the vendor's perspective: 1) and 2) seem to lead to economical
and or marketing advantages when the vendor adheres to a 'standard', but
I don't really know.

4) From a quality perspective: I hope that the standard lib is reviewed
by a much broader audience than boost. For example compiler vendors may
have a vital interest in participating in the former process. This could
lead to different assessments of a lib's interface (e.g. it might not be
efficiently implementable).

This is comparable to other fields: Why is there something like POSIX, if
we have Linux?

So in practice I'd say: If you care about the language you use, the answer
might be 'a lot and yes'.

cheers,

aa

-- 
Andreas Ames | Programmer | Comergo GmbH |
Voice:  +49 69 7505 3213 | ames AT avaya DOT com

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk