evaluate part as a new function