lazy evaluation, evaluation precedence and ordering