XPost: alt.folklore.computers   
   From: antispam@fricas.org   
      
   In alt.folklore.computers c186282 wrote:   
      
   > Hmm ... look at all the GNU 'compilers' -   
   > FORTRAN, COBOL, Ada, 'D', M2, Rust,C++,   
   > G++, even Algol-68. None are 'compilers'   
   > per-se, but to-'C' TRANSLATORS. So, 'C',   
   > pretty much All Are One And One Is All.   
      
   No. Compiler as first stage translate given language to a   
   common representation. This representatiton is different   
   than C. Ada and GNU Pascal have parametrized types, there   
   is nothing like that in C. C++ (and some other languages)   
   have exceptions, C do not have them. There are several   
   smaller things, for example Ada or Pascal modulo is different   
   that C/Fortran modulo. During optimization passes gcc   
   keeps such information, to allow better optimization and   
   error reporting.   
      
   There were/are compilers that work by translating to C. But   
   this has limitations: generated code typically is worse because   
   language specific information is lost in translation. Error   
   reporting is worse because translator is not doing as many   
   analyzes as gcc do. For those reasons compilers in gcc   
   generate common representation which contains sum of features   
   of all supported languages and not C.   
      
   > But it CAN be much more friendly and/or   
   > tuned to a particular area of interest   
   > or preferred programming style.   
      
   --   
    Waldek Hebisch   
      
   --- SoupGate-Win32 v1.05   
    * Origin: you cannot sedate... all the things you hate (1:229/2)   
|