On Tuesday, 8 September 2015 at 11:08:59 UTC, Bahman Movaqar
wrote:
However, I have made this a strict practice of mine to specify
the full signature of my public API. I suppose, if I want to
be pedantic, I have to realise the lazy value first and pass
the resulting array out. Is this correct?
Yes, using an array will work here, but if you are designing a
library then I'd prefer that you don't force me into being non
lazy where I could be just because you want to have a clear type:
laziness is a virtue, reducing possibilities isn't a great idea.
What I would do is a designated wrapper template which will give
you a clear type while still being lazy: exactly what
FilterResult and MapResult are.