So @dorugeber is right that my suggestion breaks unless we allow `project` to take an optional argument `name` to be used as the name of the `Function` to create.