Visual Basic摆脱自己的运行时枷锁

很多人对Visual Basic最大的一个抱怨就是它对运行时库的依赖。包含了用于VB语言构造的一些辅助函数的这个类库(译者注:这个类库即Microsoft.VisualBasic.dll,VB语言的很多基础功能都需要调用到这个类库),是作为.NET平台的一个基本功能共同发布的。对大多数用户而言这不会有什么问题,但对于非标准平台问题就大了。

首当其冲为这一问题所困扰的平台是Mono。因为这一依赖,在Mono C#编译器推出多年以后,VB编译器还无法实现。

另外一个因为需要这个运行时而受害的平台是.NET Compact Framework和XBox 360。这一问题的根源是VB运行时里使用了某些.NET Compact Framework和XBox 360里没有的IL指令。

为了易于支持上述受害的以及其他可能用到VB运行时的平台,Visual Basic 9针对如何支持运行时增加了良好的灵活性。在将来它会给开发者提供一种选择,让你可以根本不引用VB运行时。显然,这意味着那些关联的语言属性将不会在编译期出现。另外一个是被Paul Vick称为“运行时敏捷 ”(Runtime Agility)的选择。也就是说,到那时平台开发人员可以实现自己的VB运行时版本。

这些新的选择会得到编译器的全部支持。所以如果你真的替换了原有的运行时,决定不支持某个特定的VB语言属性时,你会得到一个明确的错误信息提示,而不是编译器直接崩溃。

这一功能会随Orcas Beta 2版本发布。

查看英文原文: VB Breaks Its Runtime Chains

你可能感兴趣的:(Visual Basic摆脱自己的运行时枷锁)