Multiple return value as requirements for safety and performance

Ilya Yaroshenko via Digitalmars-d digitalmars-d at puremagic.com
Tue Dec 20 05:47:50 PST 2016


One good thing for safety and CTFE is allow multiple return 
value. In combination with `auto ref` it is _very_ powerful:

----
auto ref front()
{
   // Returns 2 values, each value is returned by reference if 
possible
   return (a.front, b.front);
}
----

Mir libs will use pointers for now. This is one of reasons why 
`zip` is slow.
The new feature also significantly extends std.range and 
std.algorithm functionality.

This thread was forked from
http://forum.dlang.org/post/acdwfbirvoxzrsfyltqd@forum.dlang.org

I am not good in DIPs and hope someone is interested in this 
feature too


More information about the Digitalmars-d mailing list