Software Tools Minutes 3/22/96 Present: J. Hobbs (minutes taker), D. Genser, H. Greenlee, A. Jonckheere, Q. Li-Demarteau, L. Lueking, L. Paterno, S. Protopopescu, S. Snyder, S. Krzywdzinski, and G. Watts Laura Paterno presented her revised compiler recommendation note. In addition to minor wording changes the following items were added under the heading of separate documentation to be maintained on an ongoing basis: 1) A FAQ for compiler/IDE maintainers. This is intended to aid maintainers of the D0 environment at remote institutions when upgrading/installing a supported compiler. 2) A list of supported compilers/IDE and the name of a person responsible for questions regarding each compiler. 3) A list of requirements that a compiler must satisfy before it can be an official compiler/IDE. These changes will be made with a goal of signing off on the document in mid- week. Alan Jonkheere described the first(?) meeting of the joint D0/CDF/CD code management group. He noted that this group maintains a web page at http://www-cdf.fnal.gov/offline/code_management/home_page.html. He also informed the group that a prototype CVS installation at D0 has begun. This is based on the SDSS methods and scripts. Scott Snyder and Gordon Watts gave an overview of scripting languages and their features. In general, D0 has a number of scripting languages already in use. Examples include RCP files, .pbd files and trigger parsing scripts. Gordon emphasized the notion of a universal scripting language, but noted that perhaps the different functions (eg RCP vs trigger parsing as data storage vs. procedural) would actually imply a small set of languages. It was also noted that in general, the scripting language is an interpreter linked into user code. Three specific scripting languages were mentioned and the pros and cons we described. An example was given for each language. The languages are TCL, Python, Perl and each is summarized here. TCL - See http://www.sunlabs.com/research/tcl Pros: Sun computer is godfather'ing simple syntax TK for graphics large code base Cons: all variables are strings awkward for expressions single global name space Python - See http://www.python.org *USED BY FRAMEWORK PROTOTYPE GROUP* Pros: large tool suite large library suite (including GUI) coordinating organization embedded C/C++ object oriented Cons: block definition by indentation Perl - See http://www.perl.com Pros: de facto unix standard large user base good for text processing TK library for graphics object system (recent versions) Cons: complex syntax context dependent syntax non-interactive (not trivial to link as interpreter in user code)