【24h】

An NSF Proposal

机译:NSF提案

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

摘要

The objectives of this research are to improve software productivity, reliability, and performance of complex systems. The approach combines program transformations, sometimes in reflective ways, to turn very high level perspicuous specifications into efficient implementations. These transformations will be implemented in a meta-transformational system, which itself will be transformed from an executable specification into efficient code. Experiments will be conducted to assess the research objectives in scaled up applications targetted to systems that perform complex program analysis and translation. The transformations to be used include dominated convergence (for implementing fixed points efficiently), finite differencing (for replacing costly repeated calculations by less expensive incremental counterparts), data structure selection (for simulating associative access on a RAM in real time), and partial evaluation (for eliminating interpretive overhead and simplification). Correctness of these transformations, of user-defined transformations, and of the transformational system itself will be addressed in part. Both the partial evaluator and components of the transformational system that perform inference and conditional rewriting will be derived by transformation from high level specifications. Other transformations will be specified in terms of Datalog-like inference and conditional rewriting rules that should be amenable to various forms of rule induction. Previously, Cai and Paige in used an ideal model of productivity free from all human factors in order to demonstrate experimentally how a transformation from a low level specification language into C could be used to obtain a five-fold increase in the productivity of efficient algorithm implementation in C in comparison to hand-coded C. However, only small-scale examples were considered. The proposed research includes a plan to expand this model of productivity to involve other specification languages (and their transformation to C), and to conduct experiments to demonstrate how to obtain a similar five-fold improvement in productivity for large-scale examples of C programs that might exceed 100,000 lines. The proposal lays out extensive evidence to support the approach, which will be evaluated together with its theoretical underpinnings through substantial experiments. If successful, the results are expected to have important scientific and economic impact. They are also expected to make interesting, new pedagogical connections between the areas of programming languages, software engineering, databases, artificial intelligence, and algorithms.
机译:这项研究的目的是提高复杂系统的软件生产率,可靠性和性能。该方法有时会以反射的方式结合程序转换,以将非常高水平的直观规范转换为有效的实现。这些转换将在元转换系统中实现,该系统本身将从可执行的规范转换为有效的代码。将进行实验以评估针对针对执行复杂程序分析和翻译的系统的按比例放大应用程序的研究目标。要使用的转换包括主要的收敛(有效地实现固定点),有限差分(用于用较便宜的增量副本代替昂贵的重复计算),数据结构选择(用于在RAM上实时模拟关联访问)和部分评估(用于消除解释性开销和简化)。这些转换,用户定义的转换以及转换系统本身的正确性将在一定程度上得到解决。进行推断和条件重写的部分评估程序和转换系统的组件,都将通过从高级规范中进行转换而得出。其他转换将根据类似Datalog的推理和条件重写规则进行指定,这些规则应适用于各种形式的规则归纳。以前,Cai和Paige使用了一种不受所有人为因素影响的生产率的理想模型,以便通过实验证明如何使用从低级规范语言到C的转换来使高效算法实现的生产率提高五倍。与手工编码的C相比,C语言的性能更佳。拟议的研究包括一个计划,以将该生产力模型扩展到涉及其他规范语言(以及它们向C的转换),并进行实验以展示如何针对大规模C程序示例获得类似的生产力提高五倍的计划。可能超过100,000行。该提案提出了广泛的证据来支持该方法,并将通过大量实验对其理论基础进行评估。如果成功,结果有望产生重要的科学和经济影响。他们还有望在编程语言,软件工程,数据库,人工智能和算法领域之间建立有趣的,新的教学联系。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号