Re: RE : VC++6.0 and 7.0 are not supported anymore from ROOT4-04-2 or newer

From: cstrato <cstrato_at_aon.at>
Date: Wed, 11 May 2005 22:54:02 +0200


I am sorry, but I cannot resist to make some personal comments:

One of the many advantages of ROOT was that you could compile it on most compilers, even on the notoriously non-conformant, non-standard VC++ compilers. The reason was, that ROOT used only a standard subset of C++ w/o using the more exotic features such as templates, name spaces, va_arg(), etc. In addition, this made the code easily readable.

Templates:
When I started using C++ around 1992 most compilers could not handle templates. According to an article in the professional German computer magazine ct, the use of templates is still problematic today. (If I remember correctly, the developers of Java decided against the implementation of templates because of the problems.)
ROOT has implemented most STL classes and Rene did show that the implementation of ROOT is faster than the corresponding STL implementation.
Sorrowly, today it seems that "real C++ programmers use templates", and even the ROOT code now contains templates.

Name spaces:
Can someone tell me what is the advantage of defining TMath as namespace?

va_arg():
This feature is a good example that using a more exotic feature breaks the code on a platform: For a long time I could not use this feature on the Mac because of limitations of CINT. Luckily, it seems that this issue is now solved.

static_cast, dynamic_cast, etc:
Can someone tell me why I should use this feature? (to make type cast type safe)
In C/C++ the sort form was short, elegant and readable:

    int a = (int)x
Now the code looks ugly and is not very readable:

    int a = static_cast<int>(x)

The recent announcement that ROOT will merge with SEAL (for whatever reasons) lets me wonder, how many platforms and compilers will be left, where ROOT can be compiled and used in the future?

Best regards
Christian

-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
C.h.r.i.s.t.i.a.n. .S.t.r.a.t.o.w.a
V.i.e.n.n.a.         .A.u.s.t.r.i.a
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-


Rene Brun wrote:

> Eric,
> 
> VC++6 was a non-conformant C++ compiler. In particular support for
> templates was problematic and making our life more and more difficult.
> VC++7.1 is fully C++ compliant and available since more than one year.
> This will be the only supported compiler under Windows.
> 
> Rene Brun
> 
> On 
> Wed, 
> 11 May 2005, ANCIANT E. wrote:
> 
> 

>>
>>is there a fundamental problem with VC6, or is it just a problem of lack of manpower/testing
>>Platform ?
>>
>>Is this linked to my previous question about std::atoi and std::atof problem in TString ?
>>Under win2K and VC6 ?
>>
>>Cheers,
>>
>>eric
>>
>>
>>
>>
>>
>>>-----Message d'origine-----
>>>De : owner-roottalk_at_pcroot.cern.ch
>>>[mailto:owner-roottalk_at_pcroot.cern.ch] De la part de Rene Brun
>>>Envoyé : mardi 10 mai 2005 18:59
>>>À : roottalk_at_pcroot.cern.ch
>>>Objet : [ROOT] VC++6.0 and 7.0 are not supported anymore from
>>>ROOT4-04-2 or newer
>>>
>>>
>>>In the recent announcement of ROOT version 4-04-02, we forgot
>>>to mention that we do not support anymore VC++6 or VC++7.0.
>>>We support only VC++7.1
>>>
>>>Rene Brun
>>>
>>>
>>
>>***********
>>Ce message et eventuellement les pieces jointes sont exclusivement transmis a l'usage de leur destinataire. Leur contenu est confidentiel. Si vous n etes pas le bon destinataire nous vous demandons de ne pas conserver, copier, utiliser ou divulguer cette communication. Merci de le detruire et de me notifier cette erreur.
>>
>>INTERNET ne permettant pas d assurer l integrite de ce message, SODERN decline toute responsabilite au cas ou il aurait ete intercepte ou modifie.
>>
>>
>>This message and possibly any attachments are transmitted for the exclusive use of their addressee. Their content is confidential. If you are not the intended recipient please do not keep, copy, use or disclose this communication to others. Also Please delete it and notify the sender at once.
>>
>>Because of the nature of INTERNET the sender is not in a position to ensure the integrity of this message, therefore SODERN disclaims any liability whatsoever in the event of this message having been intercepted and/or altered.
>>
> 
> 
> 
> 
Received on Wed May 11 2005 - 22:56:39 MEST

This archive was generated by hypermail 2.2.0 : Tue Jan 02 2007 - 14:45:07 MET