Interesting talk about language design and evolution

Martin Nowak via Digitalmars-d digitalmars-d at puremagic.com
Sat Sep 24 17:44:57 PDT 2016


On Saturday, 24 September 2016 at 18:11:25 UTC, Brad Anderson 
wrote:
> On Saturday, 24 September 2016 at 03:39:00 UTC, Martin Nowak 
> wrote:
>> A somewhat lengthy but very interesting talk about the 
>> tradeoffs for language design and evolution.
>>
>> [CppCon 2016: Bjarne Stroustrup "The Evolution of C++ Past, 
>> Present and 
>> Future"](https://www.youtube.com/watch?v=_wzc7a3McOs)
>>
>> In particular the part about direction
>> https://youtu.be/_wzc7a3McOs?t=51m29s, and the section about 
>> tradeoffs
>> for new features
>> https://youtu.be/_wzc7a3McOs?t=30m16s.
>
> Relevant is this list of C++17 features (many of which already 
> work in popular compilers).
>
> http://stackoverflow.com/a/38060437/216300

Well if you follow the argumentation of the talk, they are not 
relevant, none of them are enabling features, most are syntax 
sugar.

> I've got to admit, the D side of me is jealous of a few things 
> on this list.

Comparing pointless feature lists really isn't that interesting, 
but figuring out how to do relevant features is.

> Structured bindings

Somewhat undecided about this. Better support for multiple return 
values would be nice, but tuple fixes most of the needs.
Kenji's full tuple proposal also included pattern matching, but 
is that more than a functional programming abbreviation of 
if-else?

> init ifs (one of those "why did it take so long to come up with 
> this?" ideas)

We removed those from D, didn't we?

> stackless coroutines look nice too.

They aren't, but they are indeed nice, and we should consider 
some async/await support for D as well. For I/O bound stuff 
Fibers are performant/resource-friendly enough though.
Cheap coroutines can efficiently connect ranges with trees, very 
nice


More information about the Digitalmars-d mailing list