...
【24h】

A Theory of Changes for Higher-Order Languages

机译:高阶语言的变化理论

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

摘要

If the result of an expensive computation is invalidated by a small change to the input, the old result should be updated incrementally instead of reexecuting the whole computation. We incrementalize programs through their derivative. A derivative maps changes in the program’s input directly to changes in the program’s output, without reexecuting the original program. We present a program transformation taking programs to their derivatives, which is fully static and automatic, supports first-class functions, and produces derivatives amenable to standard optimization. We prove the program transformation correct in Agda for a family of simply-typed λ-calculi, parameterized by base types and primitives. A precise interface specifies what is required to incrementalize the chosen primitives. We investigate performance by a case study: We implement in Scala the program transformation, a plugin and improve performance of a nontrivial program by orders of magnitude.
机译:如果昂贵计算的结果因输入的小型而无效,则旧结果应逐步更新,而不是重新切除整个计算。 我们通过衍生品递增计划。 衍生地图将程序的输入中的更改直接更改为程序输出的更改,而无需重新执行原始程序。 我们向其衍生品提供了一个计划转型,这是完全静态和自动的,支持一流的功能,并产生可用于标准优化的衍生物。 我们证明了AGDA中的程序转换为简单类型的λ-calculi系列,由基语和基元参数化。 精确接口指定递增所选的基元所需的内容。 我们通过案例研究调查表现:我们在SCALA中实施程序转换,插件并按级别提高非活动计划的性能。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号