functions with dynamically typed params #600