Core10: Namespace Global

[This post is part of a series, "wish-list for future versions of VB"]

IDEA: "Namespace Global". Allow people to declare "Namespace Global" so that their code goes into the global namespace, rather than always being inside the Project>Properties>RootNamespace.

SCENARIO: A partner team within Microsoft is writing a designer. This designer does code-gen. It wants to emit a type inside the "System" namespace. However this is currently impossible, since all emitted code goes inside the project's root namespace. If we allowed "Namespace Global" then we could do it:

Namespace Global

    Namespace System

        Class Fred : End Class

    End Namespace

End Namespace

We've not had requests from end-users to add this feature. (Tthere seem to be few users who write their own general-purpose code generation). But we've had many requests from other groups within Microsoft.

 

Provisional evaluation from VB team: This is a decent idea, one that we should consider against the other decent ideas.