Subject: Re: [boost] C++03 / C++11 compatibility question for compiled libraries
From: Hans Dembinski (hans.dembinski_at_[hidden])
Date: 2018-02-09 10:51:51
> On 9. Feb 2018, at 10:31, Richard Hodges via Boost <boost_at_[hidden]> wrote:
>> Isn't it time to require C++11 to avoid spending / wasting time on these issues?
> Upgrading oneâs compiler to adopt the current standard is free and riskless.
tl;dr I know that this is not so simple, at least if you want your software to run on a large in-homogeneous ecosystem of computers. That being said, I see no problem requiring C++11 as the new lowest common denominator at this point.
Theoretically, yes, it should be a problem to just require C++11, but I know from personal experience that there can be a lot of inertia involved in the switch from C++03 to C++11. I worked with the IceCube Neutrino Observatory for two years, and during that whole time the core developers (included me) wanted to move to C++11 and couldn't make the transition. There was no issue for people doing computing on their desktop at all, it was an issue when the software should run on computing clusters, which were invariably stuck with terribly old compilers. To understand that, you need to know that the computing clusters used in research are typically local clusters run independently by some universities. Naturally, such a disorganised ecosystem tends to be quite in-homogenous, so you have to accommodate the smallest common denominator. Now those of you in the industry probably laugh at this point and shout things like Docker and VMs, but scientists (perhaps surprisingly) are quite slow at adapting to these new technologies and tend to prefer "conservative" and "simple" solutions. I think this is mostly because administrators of said computing clusters are typically former scientists, not people from the industry, employed for life who tend to be overburdened with their daily work, so they don't find the extra time required to upgrade the software on a cluster.
Just my two cents on the issue,
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk