PASFRG Minutes 3/04/98 Pasha Murat gave a presentation about ROOT; his slides are linked from the PASFRG home page. Among the interesting points that were raised in the discussion were: 1) ROOT is different things to different people; it is a set of classes which you can link against; it is a powerful interactive analysis tool; it is also a general framework including a data model for more complex analysis and reconstruction tasks. We need to be careful for now only to worry about its capabilities as an analysis tool. 2) The scripting language is the same as the processing language; both are C++ (actually a subset of C++ as implemented by the CINT interpreter). This has advantages in that there is no extra language to learn, and it is a sneaky way of teaching people C++ one line at a time. It has disadvantages because C++ as scripting language is quite a bit more complex than is really needed for most simple tasks (although macros can be provided). 3) The language is not full C++; in particular it lacks templates and STL. This means that some care needs to be taken in "porting" offline code; moreover this puts some limits on use of templated and container classes within ROOT. 4) The ROOT demon supports network distributed data. 5) Unlike PAW, where the "loop over events" functionality was provided by the system, here this functionality must be recoded by each user for each application. There is a tool to MakeCode. 6) Powerful class broswer tools can be used both on ROOT classes and on user classes.