In the last five years, a significant shift in software architecture has occurred in the scientific computing community. Rather than exclusively focusing on the performance properties of low-level programming languages like C,C++, and Fortran, a large number of scientists are now building applications in the form of compiled extensions to high-level scripting languages like Python, Perl, and Tcl---languages that are interpreted, dynamically typed, and not normally associated with high performance computing. Closely associated with the rising popularity of scripting, a significant number of research and development efforts have focused on the problem of creating software development tools, libraries, and compilers for simplifying the task of extension programming.
In this talk, I will briefly describe the factors that are driving the use of scripting technology in scientific computing projects. I will then provide an overview of SWIG (http://www.swig.org), a specialized C++ compiler that automatically generates scripting language bindings to existing programs. Finally, I will describe some of the open software development and systems-related challenges that are faced by scientists working in this environment.
About the speaker:
David Beazley is an Assistant Professor in the Department of Computer Science at the University of Chicago. He is the creator of SWIG and the author of the Python Essential Reference. Prior to joining the University of Chicago, he worked on molecular dynamics software in the Theoretical Physics Division at Los Alamos National Laboratory.
David M. Beazley
1100 E 58th Street
University of Chicago
Chicago, IL 60637