home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #20 / NN_1992_20.iso / spool / comp / lang / ada / 2578 < prev    next >
Encoding:
Internet Message Format  |  1992-09-10  |  4.0 KB

  1. Path: sparky!uunet!gatech!prism!jm59
  2. From: jm59@prism.gatech.EDU (MILLS,JOHN M.)
  3. Newsgroups: comp.lang.ada
  4. Subject: Re: Compiler in its own language (Was: Re: Play 20K expressions again, Sam)
  5. Message-ID: <67946@hydra.gatech.EDU>
  6. Date: 10 Sep 92 14:10:56 GMT
  7. References: <dnsurber.715958256@node_26400> <9194@verdix.verdix.com> <199209100637.AA13126@cnam.cnam.fr>
  8. Organization: Georgia Institute of Technology
  9. Lines: 78
  10.  
  11. In article <199209100637.AA13126@cnam.cnam.fr> bortz@CNAM.CNAM.FR writes:
  12. >...
  13.   [ lead-up discussion deleted ]
  14.  
  15. >IMHO, it is better to write the compiler in the language it compiles,
  16. >whatever is this language. 
  17. >It has several technical benefits:
  18. (1) >- any improvment in the optimizer will optimize the compiler as well,
  19. (2) >- this is the greatest test suite you can dream of: if it can compile
  20.     >an Ada compiler, it will compile everything :-)
  21. >and a commercial one:
  22. (3) >- it states clearly that you trust the language you try to sell.
  23.  
  24. Without having come _close_ to writing a compiler or interpreter, I have
  25. some very serious reservations about this reasoning.
  26.  
  27. Programming languages have various ranges of application, strengths and
  28. weaknesses, and tradeoffs of power vs. mastery for effective use.  I
  29. couldn't select only one language to do all types of programming and feel
  30. I had always the best tool.  (Naturally, I think the USDoD's attempt to do
  31. this with Ada forces some poor and expensive design decisions, some of which
  32. were on my projects. .. Sorry, no details.)  C was originally developed to
  33. write operating systems, and its relative simplicity, implementation on
  34. processors from 8080s to Crays (and targeting for an even _broader_ range),
  35. led to its use for a lot of programming, development of C++ and a wide range
  36. of programming support tools, etc.
  37.  
  38. Just because one needs (for example) a better FORTRAN compiler doesn't imply
  39. the compiler should be written in FORTRAN.  Some BASIC interpreters were
  40. written in [compiled] BASIC, but they were generally not the good ones.
  41.  
  42. For all I know, Ada may _be_ the best language to write a compiler;  in that
  43. case it should be considered for Pascal compilers, etc.  My plaint is with
  44. the assumption that a single language has the qualities for any and all
  45. applications.
  46.  
  47. I have seen OOP (in C++) used to provide special operations and data types
  48. needed in DSP programming, allowing DSP code to be written in "near C."
  49. Perhaps OOP will evolve some tool sets with [largely] common user and
  50. programmer interfaces for _whatever_ language is best for the rest of the
  51. program.  That would help both camps, and is probably happening with
  52. windows bindings, as we type.
  53.  
  54. >I tried to list the languages used by some compilers. (If someone wants
  55. >to complete/correct this list?)
  56. >
  57. >Compiler                 Language
  58. >
  59. >Verdix                   C + now partly in Ada
  60. >Telesoft                 Ada
  61. >Alsys                    Ada
  62. >DEC                      Bliss + Ada (unknown proportions)
  63. >Meridian                 ?
  64. >Ada-Ed, first version    SETL
  65. >Ada-Ed, second version   C
  66. >Systeam                  ?
  67. >GNU Ada                  C, but may be an Ada version (?)
  68. >
  69.  
  70. Several surveys have compared these various compilers, and I don't
  71. recall any correspondence between user satisfaction and compiler source
  72. language.  Many users (including our team) report satisfaction with the
  73. DEC product, in our case partly because of its close correspondence to
  74. the XDAda for our MC680XX targets.  We also use the RTAda version of the
  75. Telesoft product, and found our development process much more painful
  76. using that package.  Depending on your benchmarks, an otherwise excellent
  77. compiler may be unacceptable:  if you _need_ 100 microsec. interrupts and
  78. the package only turns around in 250, you're stuck!
  79.  
  80. One size _doesn't_ fit all, even in the same programming language.
  81.  
  82. Regards --jmm--
  83.  
  84. -- 
  85. John M. Mills, SRE; Georgia Tech/GTRI/TSDL, Atlanta, GA 30332
  86. uucp: ...!{decvax,hplabs,ncar,purdue,rutgers}!gatech!prism!jm59
  87. Internet: jm59@prism.gatech.edu
  88.  "f U cn rd dis, U mst uz Unix!!!"  ...jaw
  89.