Allow vardiac parameters in implicit function
Add support for move only types for lazy