Facilitating the spread of knowledge and innovation in professional software development



Choose your language

InfoQ Homepage News VB Breaks Its Runtime Chains

VB Breaks Its Runtime Chains


One of the most common complaints about Visual Basic is its dependence on a runtime library. This library, which contains helper functions called by VB language constructs, is shipped with the baseline .NET platform. This makes it transparent to most users, but becomes a big problem on non-standard platforms.

The first platform this caused problems on was Mono. Because of this dependency, the VB compiler was not available for years after the Mono C# compiler was working.

The next platform hurt by the need for this runtime is the .NET Compact Framework and the XBox 360. Essentially the problem boils down to the VB Runtime using IL instructions that simply don't exist on that platform.

In order to make it easier to support these and other platforms, Visual Basic 9 has added significant flexibility to how the runtime is supported. One option developers will have is to not reference the VB Runtime at all. Obviously this means the associated language features will not be available at compile time. Another option is what Paul Vick calls "runtime agility". Essentially this means platform developers can implement their own version of the VB Runtime.

These new options include full compiler support, so if you do replace the runtime and decide not to support a specific VB language feature, you will get a clean error message instead of a hard compiler crash.

This functionality will be available starting in Orcas beta 2.

We need your feedback

How might we improve InfoQ for you

Thank you for being an InfoQ reader.

Each year, we seek feedback from our readers to help us improve InfoQ. Would you mind spending 2 minutes to share your feedback in our short survey? Your feedback will directly help us continually evolve how we support you.

Take the Survey

Rate this Article


Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Community comments

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p


Is your profile up-to-date? Please take a moment to review and update.

Note: If updating/changing your email, a validation request will be sent

Company name:
Company role:
Company size:
You will be sent an email to validate the new email address. This pop-up will close itself in a few moments.