Tipos de referência não anuláveis
Estou projetando uma linguagem e estou imaginando se é razoável tornar os tipos de referência não nulos por padrão e usar "?" para valor anulável e tipos de referência. Há algum problema com isso? O que você faria sobre isso:
class Foo {
Bar? b;
Bar b2;
Foo() {
b.DoSomething(); //valid, but will cause exception
b2.DoSomething(); //?
}
}