Yeah that's a messy topic. Basically, `?` implies optional AND nullable and overrides anything that might suggest otherwise, such as a type `Int`. I think we should entirely avoid `?` wherever possible.