An Extensible Compiler for Creating Scriptable Scientific Software

  • Authors:
  • David M. Beazley

  • Affiliations:
  • -

  • Venue:
  • ICCS '02 Proceedings of the International Conference on Computational Science-Part II
  • Year:
  • 2002

Quantified Score

Hi-index 0.00

Visualization

Abstract

Scripting languages such as Python and Tcl have become a powerful tool for the construction of flexible scientific software because they provide scientists with an interpreted problem solving environment and they form a modular framework for controlling software components written in C,C++, and Fortran. However, a common problem faced by the developers of a scripted scientific application is that of integrating compiled code with a high-level interpreter. This paper describes SWIG, an extensible compiler that automates the task of integrating compiled code with scripting language interpreters. SWIG requires no modifications to existing code and can create bindings for eight different target languages including Python, Perl, Tcl, Ruby, Guile, and Java. By automating language integration, SWIG enables scientists to use scripting languages at all stages of software development and allows existing software to be more easily integrated into a scripting environment.