【24h】

Modular Rollback through Control Logging

机译:通过控制日志进行模块化回滚

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

摘要

We present a technique, based on the use of first-class control operators, enabling programs to maintain and invoke rollback logs for sequences of reversible effects. Our technique is modular, in that it provides complete separation between some library of effectful operations, and a client, "driver" program which invokes and rolls back sequences of these operations. In particular, the checkpoint mechanism, which is entirely encapsulated within the effect library, logs not only the library's effects, but also the client's control state. Thus, logging and rollback can be almost completely transparent to the client code. This separation of concerns manifests itself nicely when we must implement software with sophisticated error handling. We illustrate with two examples that exploit the architecture to disentangle some core parsing task from its error management. The parser code is completely separate from the error-correction code, although the two components are deeply intertwined at run time.
机译:我们基于一流控制运算符的使用提出一种技术,使程序可以维护和调用可逆效果序列的回滚日志。我们的技术是模块化的,因为它在某些有效操作库与客户端“驱动程序”程序之间提供了完全隔离,该程序调用并回滚了这些操作的序列。特别是,完全封装在效果库中的检查点机制不仅记录该库的效果,而且记录客户端的控制状态。因此,日志记录和回滚对于客户端代码几乎可以完全透明。当我们必须实现具有复杂错误处理功能的软件时,这种关注点分离就很好地体现了出来。我们以两个示例进行说明,这些示例利用该体系结构将一些核心解析任务与其错误管理区分开来。解析器代码与纠错代码完全分开,尽管这两个组件在运行时紧密地交织在一起。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号