A modular programming language for engineering design

Thesis (S.M.)--Massachusetts Institute of Technology, Dept. of Aeronautics and Astronautics, 2008.

Bibliographic Details
Main Author: Coffee, Thomas Merritt
Other Authors: Annalisa L. Weigel.
Format: Thesis
Language:eng
Published: Massachusetts Institute of Technology 2008
Subjects:
Online Access:http://hdl.handle.net/1721.1/43080
_version_ 1826211283527008256
author Coffee, Thomas Merritt
author2 Annalisa L. Weigel.
author_facet Annalisa L. Weigel.
Coffee, Thomas Merritt
author_sort Coffee, Thomas Merritt
collection MIT
description Thesis (S.M.)--Massachusetts Institute of Technology, Dept. of Aeronautics and Astronautics, 2008.
first_indexed 2024-09-23T15:03:46Z
format Thesis
id mit-1721.1/43080
institution Massachusetts Institute of Technology
language eng
last_indexed 2024-09-23T15:03:46Z
publishDate 2008
publisher Massachusetts Institute of Technology
record_format dspace
spelling mit-1721.1/430802019-04-10T21:52:15Z A modular programming language for engineering design Coffee, Thomas Merritt Annalisa L. Weigel. Massachusetts Institute of Technology. Dept. of Aeronautics and Astronautics. Massachusetts Institute of Technology. Dept. of Aeronautics and Astronautics. Aeronautics and Astronautics. Thesis (S.M.)--Massachusetts Institute of Technology, Dept. of Aeronautics and Astronautics, 2008. Includes bibliographical references (p. 137-142). We introduce a new universal model of computation called MDPL that generalizes other functional models like the lambda calculus and combinatory logic. This model leads naturally to a new type of programming language that combines the key strengths of imperative and functional languages for development and analysis of programs. These strengths have particular relevance for rapid analysis of large-scale engineering design problems. MDPL uses a novel approach to provide not only the flexibility to easily change relationships among elements in a program (as in imperative languages), but also the power to easily reuse and redeploy existing structures of such relationships in new places within a program (as in functional languages). The core formalism of MDPL is highly structured, but can be operated on by a family of formally defined algorithmic transformations that can automatically modify the structure of MDPL programs in useful ways to alter the relationships between essentially arbitrary program elements. These operations change the structure of a program to either change its functional interpretation, or to provide a different representation with the same interpretation, which may be used to make further changes. These algorithmic transformations play a critical role in rapid, incremental development of MDPL programs. We describe a prototype implementation of an MDPL-based graphical programming environment targeted at engineering modeling tasks. This environment is used to conduct an experimental case study comparing the performance of the MDPL-based environment with a mainstream spreadsheet-based environment in the hands of engineers addressing a space systems design analysis task in a time-critical setting. The results of the case study illustrate some of the practical advantages of MDPL and confirm the intuition behind its design. (cont) We also discuss the theoretical capabilities of MDPL in relation to general-purpose computer programming, and explain how it captures or supersedes many of the important features of existing programming languages from multiple paradigms. Finally, we discuss opportunities for future research and development, including: efficient implementation of the MDPL formalism; an effective graphical user interface for programming in MDPL-based languages; and potential extensions to MDPL for specialized application areas. by Thomas Merritt Coffee. S.M. 2008-11-07T18:59:51Z 2008-11-07T18:59:51Z 2008 2008 Thesis http://hdl.handle.net/1721.1/43080 244385026 eng M.I.T. theses are protected by copyright. They may be viewed from this source for any purpose, but reproduction or distribution in any format is prohibited without written permission. See provided URL for inquiries about permission. http://dspace.mit.edu/handle/1721.1/7582 142 p. application/pdf Massachusetts Institute of Technology
spellingShingle Aeronautics and Astronautics.
Coffee, Thomas Merritt
A modular programming language for engineering design
title A modular programming language for engineering design
title_full A modular programming language for engineering design
title_fullStr A modular programming language for engineering design
title_full_unstemmed A modular programming language for engineering design
title_short A modular programming language for engineering design
title_sort modular programming language for engineering design
topic Aeronautics and Astronautics.
url http://hdl.handle.net/1721.1/43080
work_keys_str_mv AT coffeethomasmerritt amodularprogramminglanguageforengineeringdesign
AT coffeethomasmerritt modularprogramminglanguageforengineeringdesign