课题基金 / 基金详情

CAREER: Bridging the Gap Between Prototyping and Production

CAREER: Bridging the Gap Between Prototyping and Production
职业:缩小原型设计和生产之间的差距
批准号:
1360694
负责人:
Jeremy Siek
金额:
$40.7万
依托单位:
依托单位国家:
美国
项目类别:
Continuing Grant
财政年份:
2013
资助国家:
美国
项目状态:
已结题
起止时间:
2013-08-01 至 2016-02-29

项目摘要

项目成果

Jeremy Siek的其他基金

相似基金

相关文献

中文摘要
翻译
现代软件工程方法通过采用增量方法进行软件开发来提高程序员的生产力。软件工程师快速开发原型,然后迭代地将原型细化为生产系统。然而,今天的编程系统不支持从原型到生产的平滑过渡。一方面,脚本语言和交互环境支持原型设计,而另一方面,传统编程语言和优化编译器支持开发可重用和高效的产品代码。两者都不支持原型和产品,因此开发人员使用混合的编程系统。这种做法带来了许多成本,例如语言间数据传输的阻抗不匹配以及语言之间翻译程序的时间。这项研究的目标是发现单个编程系统有效地支持将原型增量细化到生产软件所需的科学原理。为了实现这一研究目标,需要解决灵活性与安全性、抽象与性能之间的经典冲突。为了实现灵活性和安全性,该研究将研究使用一种称为渐进类型的方法将动态和静态类型检查结合起来的方法。为了同时实现抽象和性能,该研究将为线性代数开发一个特定领域的编译器,并展示如何展示高级抽象如何为编译器优化提供比传统抽象(如循环和标量操作)更多的机会。项目更广泛的影响来自于程序员生产力和软件质量的提高。
英文摘要
Modern software engineering methods improve programmer productivity by taking an incremental approach to software development. Software engineers rapidly develop prototypes and then iteratively refine the prototypes into production systems. However, today's programming systems do not support a smooth transition from prototyping to production. On one hand, scripting languages and interactive environments support prototyping while on the other hand conventional programming languages and optimizing compilers support the development of reusable and efficient production codes. Neither support both prototyping and production, so developers use a mixture of programming systems. This practice incurs many costs such as the impedance mismatch of inter-language data transfers and the time to translate programs between languages.The goal of this research is to discover the scientific principles necessary for a single programming system to effectively support the incremental refinement of prototypes into production software. To accomplish this research objective, classic conflicts between flexibility and safety and between abstraction and performance need to be resolved. To achieve both flexibility and safety, the research will investigate ways to combine dynamic and static type checking, using an approach called gradual typing. To achieve both abstraction and performance, the research will develop a domain-specific compiler for linear algebra and show how show how high-level abstractions can provide greater opportunities for compiler optimization than conventional abstractions such as loops and scalar operations. The broader impacts of the project arise from improvements to programmer productivity and software quality.
期刊论文(0)
专著(0)
科研奖励(0)
会议论文
SHF: Small: Revisiting Elementary Denotational Semantics
  • 批准号:
    1814460
  • 项目类别:
    Standard Grant
  • 资助金额:
    $38.07万
  • 财政年份:
    2018
  • 负责人:
    Jeremy Siek
  • 依托单位:
CAREER: Bridging the Gap Between Prototyping and Production
  • 批准号:
    0846121
  • 项目类别:
    Continuing Grant
  • 资助金额:
    $48.19万
  • 财政年份:
    2009
  • 负责人:
    Jeremy Siek
  • 依托单位:
EAGER: Exploratory Research on Gradual Programming
  • 批准号:
    0939991
  • 项目类别:
    Standard Grant
  • 资助金额:
    $8.17万
  • 财政年份:
    2009
  • 负责人:
    Jeremy Siek
  • 依托单位:
Collaborative Research: Modular Metaprogramming
  • 批准号:
    0702362
  • 项目类别:
    Standard Grant
  • 资助金额:
    $34.0万
  • 财政年份:
    2007
  • 负责人:
    Jeremy Siek
  • 依托单位:
海外基金