Returns a term that is functionally equivalent to t, however if t is of the form ((y1, ..., yn) => e2)(e1, ..., en) then it optimizes the top most call by returning Some with the result of beta-reducing the function application. Similarly, all outermost curried function applications will be beta-reduced, if possible. Otherwise returns None.
Returns a term that is functionally equivalent to t, however if t is of the form ((y1, ..., yn) => e2)(e1, ..., en) then it optimizes the top most call by returning Some with the result of beta-reducing the function application. Similarly, all outermost curried function applications will be beta-reduced, if possible. Otherwise returns None.
To retain semantics the argument ei is bound as val yi = ei and by-name arguments to def yi = ei. Some bindings may be elided as an early optimization.