首页> 外文会议>Conference on Object-oriented programming, systems, languages, and applications >Multi-dispatch in the Java Virtual Machine (poster session)
【24h】

Multi-dispatch in the Java Virtual Machine (poster session)

机译:Java虚拟机中的多调度(发布会话)

获取原文

摘要

Mainstream object-oriented languages, such as C++ and Java, provide only a restricted form of polymorphic methods, namely single-receiver dispatch. In common programming situations, programmers must work-around this limitation. We detail how to extend the Java Virtual Machine to support multiple-dispatch and examine the complications that Java imposes on multiple-dispatch in practice. Our technique avoids changes to the Java programming language itself, maintains source-code and library compatibility, and isolates the performance penalty and semantic changes of multiple-dispatch to the program sections which use it. We have micro-benchmark and application-level performance results for a dynamic Most Specific Applicable (MSA) dispatcher, two table-based dispatchers (Multiple Row Displacement (MRD) and Single Receiver Projections (SRP)), and a tuned SRP dispatcher. Our general-purpose technique provides smaller dispatch latency than equivalent programmer-written double-dispatch code.

机译:

主流的面向对象语言,例如C ++和Java,仅提供受限形式的多态方法,即单接收器分派。在常见的编程情况下,程序员必须变通解决此限制。我们将详细介绍如何扩展Java虚拟机以支持多重调度,并在实践中检查Java施加于多重调度的复杂性。我们的技术避免了对Java编程语言本身的更改,保持了源代码和库的兼容性,并将性能损失和多重调度的语义更改隔离到了使用它的程序部分。我们获得了动态最具体适用(MSA)调度程序,两个基于表的调度程序(多行位移(MRD)和< I> Single Receiver Projections (SRP))和经过调整的SRP调度程序。我们的通用技术提供的调度延迟比等效的程序员编写的双调度代码要短。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号