On Wednesday, 26 February 2020 at 12:18:07 UTC, FeepingCreature wrote:
But to be thrice fair, Adam/Steven's proposal would work with the minor extension `f(i"hello $a".format)`/`f(i"hello $a".to!string)`, in keeping with the trend of GC use requiring explicit opt-in.

Actually, thanks to the new type, the sample code in my dip offers an `idup` overload that works really easily for the users.


void foo(string s) {}

const(char)[] a;

foo(a); // doesn't work, but you can .idup it

foo(i"..."); // doesn't work, but you can .idup it too!

foo(i"...".idup); // indicates you are OK with the GC copy by asking for one


so still really easy to use while being in line with D's existing features. No GC if you don't want it, easy GC if you do.

Reply via email to