Re: [Fwd: Re: Wikipedia criticism about root]

From: cstrato <cstrato_at_aon.at>
Date: Sat, 01 Jul 2006 00:17:42 +0200


Hi Christian

Christian Holm Christensen wrote:

> Hi Christian et al,
>
> On Fri, 2006-06-30 at 20:45 +0200, cstrato wrote:
>

>>Hi Andy
>>
>>Sorrowly, you still do not understand my point regarding CINT :-(
>>
>>So let me explain:
>>When I realized in 1999 that 

>
> ...
>
>>Finally, I found ROOT and was glad to see that it was open source,
>>and it fitted my purposes perfectly.

>
>
> ROOT wasn't truly open source back then. The clause in the older
> license that forbade distribution of modified source with out explicit
> consent was the problem. Today, it's LGPL'ed :-)
>
>
>>Maybe, there is another mistake on your side: ROOT is NOT a program,
>>it is a framework which people can use to write small applications 

>
> ...
>
> Well, it's a program _and_ a framework. But you are right - if people
> want a GNUPlot-like interface, they could write one. If people think
> that the AIDA fileformat should be supported, they could write code for
> that (I'm sure ROOT would happily include it), and so on. There's
> nothing that prevents people from contributing extensions or plug-ins.
>
> ...
>
>> So you
>>are not forced to use ROOT for everything! 

>
>
> Well, Andy is right in that ROOT can be pretty invasive in an
> application or framework. The reason for that, at the very root of the
> ROOT classes: TObject, and the dictionaries.
>
>
>>However, personally
>>I prefer to need to learn only one framwork and not multiple
>>frameworks, for this reason I am glad that ROOT has its own
>>GUI classes, and I need not have to learn e.g. the QT classes.

>
>
> I guess Andy's arguing that you could have a better GUI by reusing some
> specialised libraries like GTK, Qt, Wx, or what not. However, one will
> do good to remember the state of the Unix desktop back in 1995.

My gui application has meanwhile a very complex user interface, it has more than 40,000 LOC using only the ROOT gui classes, and it is very stable. I was really surprised myself, how stable the gui is!

>
>

>>Finally, a few words on the choice for me (and maybe the ROOT
>>developers, too?) to use C++. When ROOT started in 1995, C++ was
>>the only choice: Fortran was more or less dead and Java was not
>>ready for any professional use.

>
>
> Fortran, some would say, is still very much alive and kicking (well,
> mostly kicking :-)
>
> As the machines are getting faster, Java looks more and more attractive
> - since the additional overhead of the virtual machine is
> disappearing.

As someone having started programing an IBM 1130 mainframe with 16 kb core memory, I still cannot accept to waste processor power using a language which is based on 30 year old technology (p-code of UCSD-Pascal!)
The argument to develop code only once and run it on all machines is for me no argument. BTW, it may well be that a program based on ROOT may run on more supported architectures than a Java program.

NeXT and MacOS X developers always say that Obj-C is much easier to use than C++, and Obj-C has all the advantages of Java w/o the disadvantages (As far as I know, Java has taken the features of Obj-C and the syntax from C++) Sorrowly, Obj-C is not mainstream.

>
> That said, it really doesn't matter what language you use - pick the one
> best suited for the job. For instance, it would be ridiculous to write
> proof theory in anything but a functional language like SML or OCAML.
> Number crunching is best done in a fast language, and modelling is best
> done in OOP.
>
> Andy's main concern, seems to be that ROOT is using an OOP language in a
> non-OO way - to some extent he's right (need I mention TH1 and it's
> Fortrantitis? - historical reasons, I know).
>
>

>>Although I hate C (C use should be extremely discouraged) 

>
> ...
>
> C is cool if you are doing operating systems :-) For OS's it would be
> hard to use C++ (people have tried).
>
> C (and C++ by inheritance) is an ugly language, and surely Java is much
> nicer. Just like the Linux is and ugly monolithic block, and Hurd is a
> beautiful micro-kernel (and the only real one, mind you!). However,
> C/C++ does the job, as Linux does it. Still, a good reason to discuss
> possible future directions.
>
> ...
>
>>P.S.: Like you, I do not know what ROOT stands for, so let me
>>suggest: "Rene´s Object Oriented Trees", because these trees
>>are another ingenous concept (together with the operating
>>system independent TFiles)

>
>
> "ROOT's Object Oriented Technologies" - it's right there at the top of
> the web-page :-)

I must have missed this, and I am still not able to see it. The top of my ROOT main page says "ROOT An Object Oriented Data Analysis Framework" and the title is "The ROOT System Home Page - Mozilla" - but maybe I am too stupid to see it :-)

Best
Christian

>
> Yours,
>
Received on Sat Jul 01 2006 - 00:17:55 MEST

This archive was generated by hypermail 2.2.0 : Mon Jan 01 2007 - 16:31:59 MET