transparent lambda

Stefan Schulz schulz at
Tue Dec 29 15:17:46 PST 2009

On 29.12.2009 23:57, Mark Mahieu wrote:
> I think it's the terminology I'm uneasy with - for example, how do I
> describe clearly and unambiguously what that statement does?  A
> return statement is easy: it "returns a value", or "returns from a
> method" or whatever.  A hypothetical 'yield' statement is similar:
> "yields a value", "yields from a lambda" etc.
> 'break' is fine when there's no value (it "breaks from the named
> lambda"), but when there is one?
> Your example suggests that I should say something like "breaks from
> the lambda named 'foo' returning 'bar'", but if its producing a
> result from the lambda then "return" is exactly the word I'd like to
> avoid here.
> "breaks bar from foo" maybe?
> (sorry for the pedantic rambling)

No worries. The wink was added on purpose.
I'd just like to see something explicit rather than subtle and easy to 
forget/mistype. "break" is nothing I'd expect to yield anything. So any
   "break bar yield/answer/give/with foo"
to me reads better than
   "break bar : foo" // reminds of assert, though
   "break bar (foo)"


More information about the closures-dev mailing list