home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #18 / NN_1992_18.iso / spool / comp / lang / cplus / 12304 < prev    next >
Encoding:
Text File  |  1992-08-13  |  3.6 KB  |  95 lines

  1. Newsgroups: comp.lang.c++
  2. Path: sparky!uunet!munnari.oz.au!metro!extro.ucc.su.OZ.AU!maxtal
  3. From: maxtal@extro.ucc.su.OZ.AU (John MAX Skaller)
  4. Subject: Re: Handling of operator . pro
  5. Message-ID: <1992Aug13.014043.20561@ucc.su.OZ.AU>
  6. Sender: news@ucc.su.OZ.AU
  7. Nntp-Posting-Host: extro.ucc.su.oz.au
  8. Organization: MAXTAL P/L C/- University Computing Centre, Sydney
  9. References: <memo.565691@cix.compulink.co.uk> <9222523.7061@mulga.cs.mu.OZ.AU>
  10. Date: Thu, 13 Aug 1992 01:40:43 GMT
  11. Lines: 82
  12.  
  13. In article <9222523.7061@mulga.cs.mu.OZ.AU> fjh@munta.cs.mu.OZ.AU (Fergus James HENDERSON) writes:
  14. >vadim@cix.compulink.co.uk (Vadim Lebedev) writes:
  15. >>
  16. >>Exactly!!! That IS the reason i want them to be implemented ONCE by the
  17. >>language implementor, and not MULTIPLE times by compiler users.
  18. >
  19. >There is more than ONE language implementor...
  20. >OK, there are more programmers than compiler writers :-)
  21.  
  22.     Untrue in a reflexive language. *Everyone* is a compiler
  23. extender :-)
  24. >
  25. >If the language becomes too complex, then "simply knowing the language"
  26. >becomes a non-simple task. On the other hand if some feature has been
  27. >coded using the facilities of a simple language, the maintainer can
  28. >SEE how it works, by reading the code.
  29.  
  30.     Not necessarily. COBOL for example is divided into modules
  31. and levels, allowing predefined subsets and optional modules.
  32. You could learn COBOL wiithout using the Report Writer, for example.
  33. The learn the report writer later.
  34.  
  35.     C++ tends not to be like this for two reasons:
  36.  
  37.     1) Complexity due to compatibility with C
  38.     2) Bjarne tries to get as much as possible out of the 
  39.     single idea of classes.
  40.  
  41. And this shows that C++ is basically C with a single new concept,
  42. namely classes. There are two other extensions, templates
  43. and exceptions. Templates are under-developed, and exceptions
  44. are not implementable at the moment.
  45. >
  46. >The ideal is to have a language that is simple but powerful and extensible.
  47. >This is the idea behind using standard library i/o functions rather than
  48. >special builtins, overloading rathern than printf %-specifiers, etc.
  49.  
  50.     Yes. To make C++ simpler, try this:
  51.  
  52.     Throw out float.
  53.     Throw out operators.
  54.  
  55.     Now devise a mechanism to put them back in via a 'library'.
  56.     Now you have user defined syntax and support for arbitrary
  57.     primitive types.
  58.  
  59.     Whatever you want to extend---throw it out first.
  60. >
  61. >Often it is not clear whether you should use a feature until after you
  62. >have learnt it, so this is difficult.
  63.  
  64.     True.
  65. >
  66. >Also you have to learn the advanced feature every time you are maintaining
  67. >code that used it, even if that code could have been written using only
  68. >simpler features.
  69.  
  70.     I'm not so sure. Why is it harder to learn a properly conceived
  71. language facility than to learn someones emulation of that facility
  72. in reams of code? Sure you can read the code and deduce what it does,
  73. but you are basically saying language manual writers ought to
  74. write their manuals in C not english.
  75.  
  76.     [BTW: I sometimes think this!]
  77. >
  78. >I shouldn't have said PL/1 (I have never learnt that language, I was just
  79. >repeating what I have heard and read). Instead I should have said C++ :-)
  80. >
  81.  
  82.     Some people complain about complexity of learning C++.
  83. Bull. They have not traded off the advantages as compared to C.
  84. You try re-writing some of your C++ programs in C :-)
  85. If you're any good at this, please apply to AT&T, they are looking
  86. for a version of 'cfront' that works :-)
  87.  
  88.  
  89.  
  90. -- 
  91. ;----------------------------------------------------------------------
  92.         JOHN (MAX) SKALLER,         maxtal@extro.ucc.su.oz.au
  93.     Maxtal Pty Ltd, 6 MacKay St ASHFIELD, NSW 2131, AUSTRALIA
  94. ;--------------- SCIENTIFIC AND ENGINEERING SOFTWARE ------------------
  95.