首页> 外文会议>24th annual ACM conference on object oriented programming, systems, languages and applications 2009 >Executing Code in the Past: Efficient In-Memory Object Graph Versioning
【24h】

Executing Code in the Past: Efficient In-Memory Object Graph Versioning

机译:过去执行代码:高效的内存中对象图版本控制

获取原文
获取原文并翻译 | 示例

摘要

Object versioning refers to how an application can have access to previous states of its objects. Implementing this mechanism is hard because it needs to be efficient in space and time, and well integrated with the programming language. This paper presents HistOOry, an object versioning system that uses an efficient data structure to store and retrieve past states. It needs only three primitives, and existing code does not need to be modified to be versioned. It provides fine-grained control over what parts of objects are versioned and when. It stores all states, past and present, in memory. Code can be executed in the past of the system and will see the complete system at that point in time. We have implemented our model in Smalltalk and used it for three applications that need versioning: checked postconditions, stateful execution tracing and a planar point location implementation. Benchmarks are provided to asses the practical complexity of our implementation.
机译:对象版本控制是指应用程序如何访问其对象的先前状态。实现这种机制很困难,因为它需要在空间和时间上高效,并且与编程语言很好地集成在一起。本文介绍了HistOOry,这是一个对象版本控制系统,它使用有效的数据结构来存储和检索过去的状态。它仅需要三个基元,并且不需要修改现有代码即可进行版本控制。它可以对对象的哪些部分以及何时进行版本控制。它将过去和现在的所有状态存储在内存中。代码可以在系统的过去执行,并会在那时看到完整的系统。我们已经在Smalltalk中实现了模型,并将其用于需要版本控制的三个应用程序:检查的后置条件,有状态的执行跟踪和平面点位置实现。提供基准以评估我们实施的实际复杂性。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号