Boo поддерживает синтаксис лямбда-выражений:
foo = {x|x+2}
seven = foo(5)
def TakeLambda(expr as callable(int) as int):
return expr(10)
twelve = TakeLambda(foo)
В этом примере foo
- это функция, которая принимает число x и возвращает x + 2. Поэтому вызов foo(5)
возвращает число 7. TakeLambda
- это функция, которая принимает foo
и оценивает ее как 10 .