Skip to main content

A Computational Science Agenda for Programming Language Research

Orchard, Dominic, Rice, Andrew (2014) A Computational Science Agenda for Programming Language Research. Procedia Computer Science, 29 . pp. 713-727. ISSN 1877-0509. (doi:10.1016/j.procs.2014.05.064)


Scientific models are often expressed as large and complicated programs. These programs embody numerous assumptions made by the developer (e.g., for differential equations, the discretization strategy and resolution). The complexity and pervasiveness of these assumptions means that often the only true description of the model is the software itself. This has led various researchers to call for scientists to publish their source code along with their papers. We argue that this is unlikely to be beneficial since it is almost impossible to separate implementation assumptions from the original scientific intent. Instead we advocate higher-level abstractions in programming languages, coupled with lightweight verification techniques such as specification and type systems. In this position paper, we suggest several novel techniques and outline an evolutionary approach to applying these to existing and future models. One-dimensional heat flow is used as an example throughout.

Item Type: Article
DOI/Identification number: 10.1016/j.procs.2014.05.064
Subjects: Q Science > QA Mathematics (inc Computing science) > QA 76 Software, computer programming,
Divisions: Faculties > Sciences > School of Computing > Programming Languages and Systems Group
Depositing User: Dominic Orchard
Date Deposited: 28 Sep 2016 13:25 UTC
Last Modified: 29 Jul 2019 14:31 UTC
Resource URI: (The current URI for this page, for reference purposes)
Orchard, Dominic:
  • Depositors only (login required):


Downloads per month over past year