i found that , when
int a = 2, b = 0
the expression
 max( (_1 - _2 - 4)( a, b ) , 0 );
should return 0, but return -2, why ?
is it a bug in lambda?