Amusing D facts: typesafe variadic arrays are lazy!

downs default_357-line at yahoo.de
Tue Oct 13 06:06:25 PDT 2009


Did you know the following code compiles?

> module test;
>
> import std.stdio;
>
> void Assert(bool cond, string delegate()[] dgs...) {
>   debug if (!cond) {
>     string str;
>     foreach (dg; dgs) str ~= dg();
>     throw new Exception(str);
>   }
> }
>
> void main() {
>   Assert(false, "O hai thar! ");
> }


It's true! :)



More information about the Digitalmars-d mailing list