[Bf-committers] Making C++11 required for blender2.8 branch

Sergey Sharybin sergey.vfx at gmail.com
Tue Oct 4 14:49:04 CEST 2016


On Tue, Oct 4, 2016 at 2:07 PM, Mike Erwin <significant.bit at gmail.com>

> On Tue, Oct 4, 2016 at 6:51 AM, Sergey Sharybin <sergey.vfx at gmail.com>
> wrote:
> But C++11 threading / async / concurrency is so nice! As long as BLI offers
> similar perks... does it? I get the point about single scheduler.

Threading/concurrency in C++11 would be platform and std implementation
dependent. Which is always a major PITA,b because then you would have no
clue if something is fast or slow.

It will also introduce yet-another-threading-pool which is also no-good at

BLI's threading becomes more comprehensive and bet more improvement will be
done there for the nodify-everything freak of nature. I would really
suggest sticking to a single task scheduler every since now.

> Why a limited subset? I'm guessing it's for sanity reasons and not compiler
> support, as all major platforms have caught up. I worked with a person that
> just discovered lambdas and was using them in every possible situation...
> but if a particular C++11 feature is right for the job why not allow it?

Just to keep code clear and understandable. Without situations like "i used
shared pointer + auto + lambda just because language allows this and it
looks cool to me".

I'll be really pushing here the idea that code should be staying clear and
self-explanatory and explicit, with sane decisions about what to use.

With best regards, Sergey Sharybin

More information about the Bf-committers mailing list