> But now it's probably nearly impossible to make D references nonnullable on > default, so that syntax can't be used. And I don't what syntax to use yet. > Suggestions welcome.
One of the few ideas I have had is to use the @ suffix for this: class T {} T nullable_reference; T@ nonnullable_reference = new T@(); struct S {} S nullable_pointer; S@ nonnullable_pointer = new S@(); (Beside nonnullable class references/pointers, another way to catch bugs that I miss in D are the ranged integers of ObjectPascal/Ada. Walter doesn't like them, I think he thinks they are a failed idea, but I don't agree and I don't remember why he thinks so.) Bye, bearophile