Macro lambda

Source
macro_rules! lambda {
    [($( $t:tt )+)] => { ... };
    [{$v:expr}] => { ... };
    [$v:ident] => { ... };
    [$v:ident.$( $t:tt )+] => { ... };
    [$l:tt $( $t:tt )+] => { ... };
}
Expand description

Build lambda expression with String identifier conveniently. Generally:

  1. Dot . can be used to define abstraction.
  2. Parentheses can be used to denote subexpression.
  3. Application is left associated by default.

If you find an expression not parsed, try adding parentheses to subexpressions.

For examples please checkout the home page.