
18 Nov
2004
18 Nov
'04
2:58 p.m.
David Abrahams wrote:
However, Thorsten's prodding has made me wonder if we need || for the lazy case at all. It seems as though
params.has(name) ? params[name] : something_else;
is superior in every way except brevity. And there will be substantial cases where it's briefer as well, because there's no need to build a function object for something_else.
Am I missing something?
Yes, I think you are. We want params[name] to be a compilation error if there is no such parameter supplied by the user and no default. I don't think the proposed construct can allow that. IMO, a runtime error here is just not acceptable. -- Daniel Wallin