home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #31 / NN_1992_31.iso / spool / bit / listserv / ibmmain / 2904 < prev    next >
Encoding:
Text File  |  1992-12-28  |  2.6 KB  |  62 lines

  1. Comments: Gated by NETNEWS@AUVM.AMERICAN.EDU
  2. Path: sparky!uunet!paladin.american.edu!auvm!UCLAMVS.BITNET!CSYSMAS
  3. Message-ID: <IBM-MAIN%92122814293609@RICEVM1.RICE.EDU>
  4. Newsgroups: bit.listserv.ibm-main
  5. Date:         Mon, 28 Dec 1992 12:26:00 PST
  6. Sender:       IBM Mainframe Discussion list <IBM-MAIN@RICEVM1.BITNET>
  7. From:         Michael Stein <CSYSMAS@UCLAMVS.BITNET>
  8. Subject:      Re: Is PL/S a dead language?
  9. Lines: 51
  10.  
  11. > In article <IBM-MAIN%92122809414050@RICEVM1.RICE.EDU> "John A. Pershing Jr."
  12. > <PERSHNG@YKTVMH.BITNET> writes:
  13. > >good stuff in it -- we really should market this *excellent* systems
  14. > >programming language!  (sigh...)
  15.  
  16. I don't know if we could afford it, but I'd like to see it marketed.
  17.  
  18. > Alasdair Grant <ag129@CUS.CAM.AC.UK> writes:
  19. > From what I've seen of PL/S, it combines all the disadvantages of high-level
  20. > languages (inability to get down to the bare machine instructions and
  21. > system macros) with the disadvantages of assembler (inability to do global
  22. > register allocation and inter-procedural optimisation).
  23.  
  24. Ha!  Exactly backwards.  PL/S allows writing a structure which
  25. you *know* the mapping of, while C doesn't (the C mapping depends
  26. on the machine and the compiler implementation).  The C run time
  27. environment isn't really well defined (try running C code system
  28. key, supervisor, SRB mode).
  29.  
  30. PL/S allows bare machine instructions (in addition to inline
  31. assembly), ie:  MVCL(R2,R4);
  32.  
  33. PL/S probably does do register optimization (minus the registers
  34. which the programmer has restricted).
  35.  
  36. > Most pieces of PL/S I've seen are full of RESPECIFY and
  37. > references to real registers and real instructions.
  38.  
  39. I'd agree with that -- most programmers using PL/S don't know
  40. how to program!  Nor how to use PL/S to best effect.
  41.  
  42. > It even requires you to go to the machine instruction level to
  43. > do compare-and-swap.
  44.  
  45. No, I've heard that at least one level of PL/S accepts
  46. declarations of fields as needing CS and will generate the
  47. required code.  I've never seen any code which uses this though.
  48. (Again, the programmers probably don't know how to use it...)
  49.  
  50. > A language that had built-in facilities for queue and counter
  51. > management in a multitasking environment would be excellent,
  52. > but PL/S isn't it.
  53.  
  54. IMNSHO it's a mistake to sprinkle CS/CDS all over a program and
  55. indicates a poor design.  Some CS and CDS usage is required,
  56. however from what I've seen coded it seems easy to go overboard
  57. -- CS and CDS use should be minimized by avoiding the updates
  58. from asynchronous processes first.  (Anyway, CS/CDS force a
  59. pipeline drain and are slooooow compared to normal instructions).
  60.  
  61. <disclaimer: I've never seen a PL/S manual nor a compiler for it>
  62.