The idea is that major type features should be exposed via common metadata and represented in the IL. This allows other languages to unambiguously use such types. Non-nullable references are definitely a big enough feature. Conceptually, it&#x27;s bigger than Nullable&lt;T&gt; which is just a wrapper you can toss around any struct and could be done purely as a library (though I understand there&#x27;s some delicacy as far as unboxing null and converting that to a Nullable&lt;T&gt;).<p>I&#x27;m not sure which interpreter you&#x27;re referring to, but languages don&#x27;t need to emit similar IL for executable code (why would it matter?). What counts is that the type defs end up exported in the same manner. If making a class in VB emitted substantially different IL than C#, that&#x27;d be an issue.