I’d be interested in a new type in that case. Option…
So, if `Optional` will continue to be a reference type, you should be able to use `Optional.val` to use the associated value type.
Optional will be retrofitted to a value class not a primitive class, you get flattening but only on stack (parameter type or return type) not on heap (field).
I don't really understand the end of the part3 (the VM model), so i may be wrong.