On 07/29/2012 10:22 AM, Chad J wrote:
> On 07/29/2012 11:54 AM, Ali Çehreli wrote:

>> ForwardRange!int r1 = inputRangeObject(map!"2 * a"(a1));
>> ForwardRange!int r2 = inputRangeObject(map!"a ^^ 2"(a1));

> IIRC, these are classes that come with all the typical runtime overhead,
> right?

Yes, inputRangeObject() allows runtime polymorphism over compile-time polymorphism.

> I intend to try and keep the awesome mix of potentially optimal code
> that's also completely generalized. Introducing hard-to-inline vtable
> calls into the mix would run against that goal.

Yes, usual runtime vs. compile-time polymorphism considerations apply.

Ali

Reply via email to