should revise lambda param list and param naming style