【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 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号