Delight works like that, though i think that it's more strict than Vala about treating null dereferences as compile time errors. I think that bearophile suggested that references be marked as non-nullable because making them non-nullable by default is a breaking change in the language (i agree that that is a better approach though).