Add lazy evaluation support to expression functions

Add if(cond, true, false) function using lazy evaluation feature