|
Boost : |
Subject: Re: [boost] [c++11]
From: Niall Douglas (ndouglas_at_[hidden])
Date: 2013-06-17 12:25:06
> > Actually it targets three compilers (+clang). I might add that
> > Boost.ASIO only officially supports Windows, Linux, Solaris and OS X,
> > and only the compilers MSVC7.1 or later and g++ 3.3 or later. Some
> > would say that is a fairly narrow set in itself.
>
> That's not quite what I read here:
>
> http://www.boost.org/doc/libs/1_53_0/doc/html/boost_asio/overview/implem
> entation.html
See for yourself at
http://www.boost.org/doc/libs/1_53_0/doc/html/boost_asio/using.html. I agree
that perhaps that list, given the list you linked to, is now out of date.
> And the compilers you mentioned as officially supported by ASIO actually
cover
> pretty much every compiler out there nowdays.
>
> Comparing that with your requirement of the compiler that has not even
been
> released, it doesn't look like AFIO portability level will be even
remotely close to
> that of ASIO.
We can work around the lack of variadic templates, and therefore support
vanilla VS2012 if peer review demands it. Of course VS2012 won't make
binaries which can run on Windows XP :( so maybe VS2010 support will also be
demanded by peer review. If it is, we'll do what is required to meet VS2010.
> > Given that we knew that VS2012 would get variadic templates later this
> > year (which it will in the form of VS2013), we decided to just go
> > ahead with what
> > C++11 features will be available to > 90% of C++ users by the end of
2013.
> > That surely should satisfy the portability requirement, if not, then
> > we'll work backwards until we reach > 95% of C++ users or > 99% if
> > Boost peer review really, really wants it.
>
> I think your estimate of "> 90% of C++ users by the end of 2013" is much
too
> optimistic. People in corporate sector are very reluctant to update their
> toolsets, so expect people trying to use your new library with 3-5 year
old
> compilers.
I used the qualifier "available to" with purpose: I agree that a compiler
may be available to > 90% of C++ users but for whatever reason those users
do not avail of that compiler.
FYI for my other open source I still get regular bug submissions for MSVC6
breakage due to my use of C++98 features, so I'm well aware what corporate
is like. That said, this is a new greenfield library, and therefore no
legacy compiler technology is inconvenienced by its compiler requirements.
I might add that as C++ Now 2013 showed, there are quite a few new Boost
libraries on their way which are C++11 only and will only ever be C++11
only: I saw presentations on new C++11 only versions of Boost.Proto and
Boost.Spirit for example.
> I know, C++11 has many fancy features and all, and I'm all for its
adoption too.
> But Boost also serves practical purpose, and if people can't use your
library then
> that just limits its usefulness. So unless you trying to make some
academic work
> here, the library should be more portable.
If a corporate end user really, really wants the library working on their
compiler toolset, they are always free to sponsor a port to that toolset.
It's all open source.
Niall
--- Opinions expressed here are my own and do not necessarily represent those of BlackBerry Inc.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk