Computational Science Technical Note CSTN-209

CSTN Home

Use of Closures to Engineer Software for a Family of Numerical Simulation Models

K. A. Hawick and E. P. Clarkson

Archived: 2013

Abstract

Closures offer powerful capabilities for encapsulating adaptive parts of a simulation program into dynamical data structures. We investigate the use of closure mechanisms for managing different simulation models in a lattice simulation framework implemented in both the Java and Groovy programming languages. We present results based on compiled Java with fixed model definitions as well as with user input of models at runtime expressed in dynamical Groovy. We discuss performance and other tradeoff issues as well as the potential for highly compact and reusable software components in what would otherwise be quite a complex software system.

Keywords: closures; software engineering; on-demand code generation; code reuse; computational science; simulation

Full Document Text: PDF version.

Citation Information: BiBTeX database for CSTN Notes.

BiBTeX reference:

@INPROCEEDINGS{CSTN-209,
        author = {K. A. Hawick and E. P. Clarkson},
        title = {Use of Closures to Engineer Software for a Family of Numerical Simulation
                Models},
        booktitle = {Proc. 11th Int. Conf. on Software Engineering Research (SERP'13)},
        year = {2013},
        number = {CSTN-209},
        pages = {SER7295},
        address = {Las Vegas, July},
        month = {22-25 July},
        organization = {WorldComp},
        institution = {Computer Science, Massey University, Auckland, New Zealand},
        keywords = {closures; software engineering; on-demand code generation; code reuse;
                computational science; simulation},
        owner = {kahawick},
        timestamp = {2013.06.03},
        url = {http://www.massey.ac.nz/~kahawick/cstn/209/cstn-209.html}
}


[ CSTN Index | CSTN BiBTeX ]