An extensible compiler for creating scriptable scientific software. 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.

References in zbMATH (referenced in 40 articles )

Showing results 21 to 40 of 40.
Sorted by year (citations)
  1. Ramsey, Norman: Embedding an interpreted language using higher-order functions and types (2011)
  2. Galiano, Vicente; Migallón, Héctor; Migallón, Violeta; Penadés, Jose: PyPnetCDF: a high level framework for parallel access to netCDF files (2010)
  3. Logg, Anders; Wells, Garth N.: DOLFIN: automated finite element computing (2010)
  4. Rasch, Arno; Bücker, H. Martin: EFCOSS: an interactive environment facilitating optimal experimental design (2010)
  5. Drummond, L. Anthony; Galiano, Vicente; Migallón, Violeta; Penadés, Jose: PyACTS: A Python based interface to ACTS tools and parallel scientific applications (2009)
  6. Lang, Duncan Temple: Working with meta-data from C/C++ code in R: the RGCCTranslationUnit package (2009)
  7. Ramachandran, Prabhu; Ramakrishna, M.: An object-oriented design for two-dimensional vortex particle methods (2009)
  8. Sala, Marzio; Spotz, William F.; Heroux, Michael A.: PyTrilinos: High-performance distributed-memory solvers for Python (2008)
  9. Sala, Marzio; Stanley, Kendall S.; Heroux, Michael A.: On the design of interfaces to sparse direct solvers. (2008)
  10. Schreppers, Walter; Cuyt, Annie A. M.: Algorithm 871: A C/C++ precompiler for autogeneration of multiprecision programs. (2008)
  11. Logg, Anders: Automating the finite element method (2007)
  12. Nilsen, Jon Kristian: MontePython: implementing quantum Monte Carlo using Python (2007)
  13. Rickett, Christopher D.; Choi, Sung-Eun; Rasmussen, Craig E.; Sottile, Matthew J.: Rapid prototyping frameworks for developing scientific applications: A case study (2006) ioport
  14. Russell K. Standish, Duraid Madina: Classdesc and Graphcode: support for scientific programming in C++ (2006) not zbMATH
  15. Beazley, D. M.: An extensible compiler for creating scriptable scientific software (2002)
  16. Fletcher, John P.: Symbolic processing of Clifford numbers in C++ (2002)
  17. Jackson, Keith R.: pyGlobus: a Python interface to the Globus Toolkit(^TM) (2002)
  18. Mock, Stephen; Thomas, Mary; Dahan, Maytal; Mueller, Kurt; Mills, Catherine; von Lazewski, Gregor: The Perl Commodity Grid Toolkit (2002)
  19. Choppy, Christine; Poizat, Pascal; Royer, Jean-Claude: The Korrigan environment (2001)
  20. Gansner, Emden R.; North, Stephen C.: An open graph visualization system and its applications to software engineering (2000)

Further publications can be found at: http://www.swig.org/doc.html