(Fwd) Re: corba et al.

From: Valery Fine (fine@rsgi01.rhic.bnl.gov)
Date: Sat Jan 31 1998 - 14:05:00 MET


------- Forwarded Message Follows -------

On 30 Jan 98 at 20:29, Selim Issever wrote:

> from the root course I attended I somehow remember, that root doesnt
> use corba for netcomunication. I guess the reason will be
> performance (but I am not sure). In this case my question is: what
> makes corba that inefficient? and how does root overcome this
> problem? 


  In theory it is a matter of the long discussions and 
 solid investigations.

  But what is special for ROOT vs OTHER systems ?

  FIRST ROOT is a "framework". I mean I was NOT designed just to 
solve very "netcomunication" problem. It is done to solve the "final" 
TASKS. ROOT solves "netcomunication" problem "by automatic" as soon 
as it is in possesion of some special built-in "devil" (see below).

   What about things like Corba they are aimed to help solving some 
particular (but general, common) parts of the problem.
(of course it is to "rough" to be precises)

   They assume:  

     1. First step.
               C++ class as the "primary" definition of the 
                         user's "Informational" model of the 
                         "whatsoever". Let's say High Energy Physics 
                          Detector    

     2. Second step.

          For the database storage, Networking transferring, 
        Inter-process communication, parallel computing, GUI some sort
         of the data description is required. It is    supposed to be
        NOT in C++. This entails some sort of the      language to
        describe the things have been described in C++ 

        By definition this language is MORE "simple" vs C++. This
        means  some constrains are provided. 

        Anyway by definition some sort of the built-in "devil" is
        required to understand that "simple" language sentences.

        Since this approach assumes we are describing those been     
        described  with C++ but with more simple language, three     
        major things have to be  happened:

        1. NOT all C++ constructions (classes / object) can be 
           treated.

        2. Very complicated (and long) bad-to-be-understood 
           collections of the simple sentences should be 
           involved. Unless the original task is the simple (or 
           restricted) one.

        3. Each language is desired to solve some limited set of 
           the tasks.

         Many of those are gone away just that "devil" does 
         understand very C++ directly.

          This "devil" may be very complicated "inside", but ALL 
         application and system tasks can be solved very easy, fast
         and native way (see ROOT via CINT implementation as the
         example) just because there is no step step #2 at all (or it
         is pretty trivial one).               

           See Microsoft Visual Basic and Java as other examples      
         of that approach.


            CORBA approach assumes it is IMPOSSIBLE to use C++ class 
         definition directly and across platform (See Fons reply too).

      I hope this message will not fire a hot discussion on this list.
      Just some food for a thinking brain.

            With my best regards,
                                          Valery
=================================================================
Dr. Valeri Faine (Fine)
    -------------------          Phone: +1 516 344 7806
Brookhaven National Laboratory   FAX  : +1 516 344 4206
Bldg. 510A /STAR                 mailto:fine@rsgi01.rhic.bnl.gov
Upton, New York, 11973-5000      http://nicewww.cern.ch/~fine
USA
                                 
Dr. Valery Fine                  Telex : 911621 dubna su
    -----------
LCTA/Joint Inst.for Nuclear Res. Phone : +7 09621 6 40 80
141980 Dubna, Moscow region      Fax   : +7 09621 6 51 45
Russia                           mailto:fine@main1.jinr.dubna.su                              



This archive was generated by hypermail 2b29 : Tue Jan 04 2000 - 00:34:29 MET