科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道基础软件把脚本重新带回进VB

把脚本重新带回进VB

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

 历史上,Visual Basic有着脚本和动态编程的基础,但是并没有被完全支持。例如,它能够通过迟绑定(即所谓的duck typing)来使用对象,但却没有能力确定他们——这样的语言特性被普遍认为是和脚本编程是不相配的。在Lang.NET的一个演示中,Paul Vick谈到如何把脚本重新带回进VB.

作者:佚名 来源:中国IT实验室 2008年6月11日

关键字: 脚本 VB vb.net Windows

  • 评论
  • 分享微博
  • 分享邮件
 历史上,Visual Basic有着脚本和动态编程的基础,但是并没有被完全支持。例如,它能够通过迟绑定(即所谓的duck typing)来使用对象,但却没有能力确定他们——这样的语言特性被普遍认为是和脚本编程是不相配的。在Lang.NET的一个演示中,Paul Vick谈到如何把脚本重新带回进VB.
 
  他的第一个演示展示了一个使用完整Visual Basci引擎实现的提供了REPL接口的Excel原型。REPL,即“读取-求值-打印-循环(Read-Evaluate-Print-Loop)”,是诸如Ruby、Python和Lisp这样的动态语言的一个标准特性。脚本窗口是基于动态语言运行时(Dynamic Language Runtime)的,所以它也可以支持IronPython和JScript.
 
  Paul首先讨论了VB编译器的3个分层。在实现类似解析和代码生成这样传统编译器特性的核心(Core)服务的最上层,是项目(Project)服务。它处理了项目级的详细信息,比如引用和资源。它也包括一个反编译器,在Visual Studio IDE中被用来协助后台编译器实现增量改变。最外层的是工具/IDE服务,它包括了所有Visual Studio所需的特性,如代码完成与纠错。
 
  VB编译器的核心服务的完整版本是由非托管(unmanaged)C++代码编写的。为了支持运行时编译和迟绑定,由Visual Basic编写的核心服务的部分版本也是存在的。
 
  未来版本的VB可能会包含适合运行时使用的完整版本的核心服务。或许,它甚至会包含工具/IDE服务层,以允许开发人员创建一个类似VBA的东西出来。
 
  另外一个演示讨论了VisualBasic.Editor和VisualBasic.Compiler命名空间。该演示展示了如何在一个WinForms应用程序中托管一个VB编辑器。这一编辑器还比较粗糙,但是它已经能够支持类似语法着色这样的事情了。在这个演示中,Paul示范了重写编辑器的行为来马上执行右键选中的高亮代码。
    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章