March 15, 2001, 5:35 PM —
While we generally think of C as the prototype industrial language -- hard-edged, high-performance, and dangerous -- numerous projects have attempted to wrap C in a more amiable package. Some were developed more than 20 years ago. Among the survivors still in production are:
Our survey excludes interpreters not generally available for Unix systems (such as QNC and Think C), those with limited interactivity (the UPS C interpreter), and interpreters that are moribund. We found software product catalogs listing C interpreters that have been orphaned for several years, but all the following systems are in active development.
"CINT covers about 95 percent of ANSI C and 85 percent of C++," including its own source code, according to CINT's homepage. CERN, the same international physics laboratory that employed Tim Berners-Lee as he designed the original World Wide Web, currently sponsors CINT.
Masaharu Goto wrote CINT in 1991 while employed by Hewlett-Packard Japan. Now an engineer with Agilent, HP's original testing and measurement business, which HP spun off late last year, he continues his development of CINT.
In 1995, Rene Brun and Fons Rademakers launched the ROOT project at CERN to introduce physicists quickly to the new world of Objects and C++ and to improve their productivity with large-scale data analysis and simulation. After comparison with candidates such as Tcl/Tk and Python, Rademakers and Brun selected CINT in 1996 for ROOT. Like CINT, ROOT is an open source project. CERN uses ROOT to structure analysis of the output from, as Bruns explains, "large Hadron Collider (LHC) experiments that will generate about ten petabytes of data per year in 2005. ROOT is being used in several hundred [particle physics] labs in the world and also in many nonscientific applications that have to analyze very large amounts of data." Finance is one area outside physics where CINT is known to be in production.
ROOT's sponsorship has encouraged CINT to support more of the C++ standard as well as extended runtime-type information, templates, and the robustness essential for interactive operation. "The next phase starting this fall will see major extensions to provide a parallel and distributed data analysis environment in the context of GRID projects both in Europe and in the US," Brun concludes.
CINT is available for most Unixes as well as Win NT. Among interesting recent CINT developments is RDBS, which interfaces to ODBC the way JDBC does.
"EiC is designed to be a production tool...one of the most complete, freely available C interpreters built to date," writes Edmond J.