On 9/13/14, 8:36 AM, bearophile wrote:
This is a little Haskell program that uses the Maybe type constructor:
[snip]

As others noted, I think we need a kind of range with either zero or one element. Also, the range would have an "exception" property that returns null if the operation was successful (and the element is there) or whatever exception produced the result. E.g.:

MaybeRange fun() { ... }
...
auto r = fun;
if (r.empty)
{
    assert(r.exception);
    ... error case ...
}
else
{
    ... use r.front ...
    r.popFront;
    assert(r.empty); // just one element
}


Andrei

Reply via email to