Boost logo

Boost :

From: David Abrahams (dave_at_[hidden])
Date: 2005-09-24 17:59:31

Cromwell Enage <sponage_at_[hidden]> writes:

> I remember a thread that ran for a while on this
> topic, and I need to make sure I've wrapped my head
> around it correctly.

I think you're referring to Vesa Karvonen's Lazy MPL (not sure if
that's what he called it).

> Here are my takes on laziness:
> <take id="point-1">
> A metafunction returns lazily if it can be used
> interchangeably with its return type.

I don't think that's the right way to think about it; Vesa's laziness
is not about how things are returned, but about the treatment of
arguments. A valid lazy metafunction argument is one that has a
nested ::type. In other words, all lazy metadata are MPL nullary

Dave Abrahams
Boost Consulting

Boost list run by bdawes at, gregod at, cpdaniel at, john at