Adam D. Ruppe: > I've trained myself to use assert (or functions with assert > in out contracts/invariants) a lot to counter these. I think contracts are better left to higher level ideas. The simple not-null contracts you are adding are better left to a type system that manages a succinct not-null syntax. Bye, bearophile