A modular programming language for engineering design
Thesis (S.M.)--Massachusetts Institute of Technology, Dept. of Aeronautics and Astronautics, 2008.
Main Author: | |
---|---|
Other Authors: | |
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 |