首页> 外文会议>International Conference on Objects, Models, Components, Patterns >Efficient Method Lookup Customization for Smalltalk
【24h】

Efficient Method Lookup Customization for Smalltalk

机译:高效方法查找SmallTalk的定制

获取原文

摘要

Programming languages are still evolving, and programming languages and language features are being designed and implemented every year. Since it is not a trivial task to provide a runtime system for a new language, existing runtime systems such as the Java Virtual Machine or the Common Language Runtime are used to host the new language. However, most of the high-performance runtime systems were designed for a specific language with a specific semantics. Therefore, if the new language semantics differs from the semantics hard-coded in a runtime system, it has to be emulated on top of features supported by the runtime. The emulation causes performance overhead. To overcome the limitations of an emulation, a runtime system may provide a meta-object protocol to alter the runtime semantics. The protocol should fulfill opposing goals: it should be flexible, easy to use, fast and easy to implement at the same time. We propose a simple meta-object protocol for customization of a method lookup in Smalltalk. A programmer may define his own custom method lookup routine in Smalltalk and let the runtime system to call it when needed. Therefore there is no need to modify the runtime system itself. Our solution provides reasonable performance thanks to low-level support in a runtime system, nevertheless the changes to the runtime system are small and local. At the same time, it provides the flexibility to implement a wide range of features present in modern programming languages. The presented approach has been implemented and validated on a Smalltalk virtual machine.
机译:编程语言仍在不断发展,每年都设计和实施编程语言和语言功能。由于提供了为新语言提供运行时系统而不是琐碎的任务,因此使用诸如Java虚拟机或公共语言运行时之类的现有运行时系统用于托管新语言。但是,大多数高性能运行时系统都是针对具有特定语义的特定语言设计的。因此,如果新的语言语义与运行时系统中硬编码的语义不同,则必须在运行时支持的功能之上模拟。仿真导致性能开销。为了克服仿真的局限性,运行时系统可以提供元件协议以改变运行时语义。该协议应履行相反的目标:它应该灵活,易于使用,快速且易于实施。我们提出了一个简单的Meta-object协议,用于自定义SmallTalk中的方法查找。程序员可以在SmallTalk中定义自己的自定义方法查找例程,并让运行时系统在需要时调用它。因此,无需修改运行时系统本身。由于运行时系统中的低级支持,我们的解决方案提供了合理的性能,但运行时系统的更改是小而本地的。与此同时,它提供了实现现代编程语言中存在的广泛功能的灵活性。已经在SmallTalk虚拟机上实施并验证了所提出的方法。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号