Building Evolutionary Software Through Modular Executable Specifications and Incremental Derivations
Building Evolutionary Software Through Modular Executable Specifications and Incremental Derivations
批准号:
9633390
负责人:
Paul Hudak
金额:
$45.0万
依托单位:
依托单位国家:
美国
项目类别:
Continuing Grant
财政年份:
1996
资助国家:
美国
项目状态:
已结题
起止时间:
1996-08-15 至 1999-07-31
中文摘要
本调查的第一个目标是一个软件开发策略,其中超模块化的可执行规范是系统设计的起点。超模块化是指一组允许人们预测和实现变化的特定技术,包括使用特定于领域的嵌入式语言来捕获高级、特定于领域的语义,以及在其上实现语义的模块化一元解释器和相关联的软件工具。使用这些技术,在软件中的模块化的水平是以前没有实现的:即,在抽象语义的元级别的模块化。其次,本研究寻求一种基于类型的模块化的概念来捕获软件架构。 有一种误解,认为类型系统与“动态语言”的目标相反,而动态语言又被视为构建可演化系统的良好候选者。这项研究反驳了这一说法。事实上,人们期望ML和Haskell等现代类型化语言可以为构建可靠和高效的进化软件提供更大的支持。特别是,高阶模块语言的设计和使用进行了研究,以捕捉系统的体系结构。最后,研究了支持增量派生概念的方法。 在这种方法中,一些可执行的规范被细化以提高性能,无论是通过形式化方法(程序转换,部分评估等)。或者通过非正式的方法(比如用低级语言重写内部循环)。关键是派生本身可以模块化,从而使它们成为平滑进化的合适候选者。 当采用形式化方法时,这也产生了一种用于构造程序正确性的模块化证明的技术;这是这种方法的另一个创新方面。这三个概念构成了研究工作的基石。为了评估它们,调查包括一个原型可扩展的操作系统的设计。 ***
英文摘要
The first goal of this investigation is a software development strategy in which ultra-modular executable specifications are the starting point of systems design. By ultra-modular is meant a set of specific technologies that allow one to anticipate and realize change, including the use of domain-specific embedded languages to capture high- level, domain-specific semantics, and modular monadic interpreters on which to realize the semantics and associated software tools. Using these techniques a level of modularity in software is obtained that has not been achieved before: namely, modularity at the meta-level of abstract semantics. Second, the research seeks a notion of type-based modularity to capture software architecture. There is a misconception that type systems are contrary to the goals of "dynamic languages," which in turn are viewed as good candidates for building evolvable systems. This research contests this claim. In fact it is expected that modern typed languages such as ML and Haskell can offer even greater support for constructing reliable and efficient evolutionary software. In particular, the design and use of a higher-order module language is studied to capture systems architecture. Finally, a methodology is investigated that supports the notion of incremental derivations. In this methodology, some executable specifications are refined for improved performance, whether by formal methods (program transformation, partial evaluation, etc.) or by informal methods (such as rewriting inner loops in a lower-level language). The key point is that the derivations themselves can be modularized, thus making them suitable candidates for smooth evolution. When formal methods are employed, this also yields a technique for constructing modular proofs of program correctness; yet another innovative aspect of this approach. These three ideas form the cornerstone of the research effort. To evaluate them, the investigation includes the design of a prototype extens ible operating system. ***
期刊论文(0)
专著(0)
科研奖励(0)
会议论文
Collaborative Research: CSR/EHS: Building Physically Safe Embedded Systems
-
批准号:0720682
-
项目类别:Continuing Grant
-
资助金额:$0.0万
-
财政年份:2007
-
负责人:Paul Hudak
-
依托单位:
Functional Hybrid Modeling
-
批准号:0306046
-
项目类别:Standard Grant
-
资助金额:$27.0万
-
财政年份:2003
-
负责人:Paul Hudak
-
依托单位:
ITR: Dance, a Programming Language for the Control of Humanoid Robots
-
批准号:0325690
-
项目类别:Standard Grant
-
资助金额:$24.0万
-
财政年份:2003
-
负责人:Paul Hudak
-
依托单位:
ITR: A Framework for Rapid Development of Reliable Robotics Software
-
批准号:0205542
-
项目类别:Standard Grant
-
资助金额:$51.03万
-
财政年份:2002
-
负责人:Paul Hudak
-
依托单位:
Principles of Functional Reactive Programming
-
批准号:9900957
-
项目类别:Standard Grant
-
资助金额:$24.99万
-
财政年份:1999
-
负责人:Paul Hudak
-
依托单位:
Enhancing Geographic Education with Data Visualization and GIS Technology
-
批准号:9650346
-
项目类别:Standard Grant
-
资助金额:$3.0万
-
财政年份:1996
-
负责人:Paul Hudak
-
依托单位:
Principles of Embedded Language Design
-
批准号:9404786
-
项目类别:Standard Grant
-
资助金额:$22.5万
-
财政年份:1994
-
负责人:Paul Hudak
-
依托单位:
Software Support for the Yale Haskell Implentation
-
批准号:9104987
-
项目类别:Standard Grant
-
资助金额:$20.36万
-
财政年份:1991
-
负责人:Paul Hudak
-
依托单位:
Principles and Applications of Partial Evaluation
-
批准号:9104043
-
项目类别:Standard Grant
-
资助金额:$5.0万
-
财政年份:1991
-
负责人:Paul Hudak
-
依托单位:
The Operational Semantics of Parallel Functional Programs
-
批准号:8809919
-
项目类别:Continuing Grant
-
资助金额:$22.52万
-
财政年份:1988
-
负责人:Paul Hudak
-
依托单位:
PYI: Semantic Analysis in Support of Parallel Computation
-
批准号:8451415
-
项目类别:Continuing Grant
-
资助金额:$31.25万
-
财政年份:1985
-
负责人:Paul Hudak
-
依托单位:
DAPS: Systems Support For AI
-
批准号:8403304
-
项目类别:Continuing Grant
-
资助金额:$13.1万
-
财政年份:1984
-
负责人:Paul Hudak
-
依托单位:
Distributed Combinator Reduction (Computer Research)
-
批准号:8302018
-
项目类别:Standard Grant
-
资助金额:$8.5万
-
财政年份:1983
-
负责人:Paul Hudak
-
依托单位:
海外基金