update to lambda_visitor for automatic return type deduction