home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #19 / NN_1992_19.iso / spool / comp / misc / 3403 < prev    next >
Encoding:
Text File  |  1992-08-29  |  10.7 KB  |  215 lines

  1. Newsgroups: comp.misc
  2. Path: sparky!uunet!sun-barr!cs.utexas.edu!milano!cactus.org!wixer!rhodesia
  3. From: rhodesia@wixer.cactus.org (Felix S. Gallo)
  4. Subject: Re: Giles' Manual Mania (Was - Re: About the 'F' in RTFM)
  5. Message-ID: <1992Aug28.174336.5888@wixer.cactus.org>
  6. Sender: rhodesia@wixer.cactus.org (Felix S. Gallo)
  7. Organization: Real/Time Communications
  8. References: <1992Aug27.020832.23988@newshost.lanl.gov> <1992Aug27.192610.12441@wixer.cactus.org> <1992Aug28.005710.1989@newshost.lanl.gov>
  9. Date: Fri, 28 Aug 92 17:43:36 GMT
  10. Lines: 203
  11.  
  12. jlg@cochiti.lanl.gov (Jim Giles) writes:
  13. >rhodesia@wixer.cactus.org (Felix S. Gallo) writes:
  14.  
  15. >|> Okay, give some concrete examples of a better 'sed', a better 'yacc',
  16. >|> and a better 'awk'.
  17. >
  18. >GNU has a better yacc (they may even call it yacc, I forget - I use LR) 
  19. >which is full LR and not LALR like normal yacc.  LR (a public domain 
  20. >parser generator) is also better than yacc.  However, if your research
  21. >and development is scientific/numerical software, a parser generator
  22. >is not really a central concern.
  23.  
  24. By 'better', I meant 'better in the senses you were indicating', i.e.
  25. ease of use, ease of learning, and the spectral 'orthogonality'.  bison,
  26. gnu's "better yacc", is not any easier to learn than standard yacc.  In
  27. fact, "bison -y" is said to be completely indistinguishable from standard
  28. yacc.  At least, I put YACC=bison -y in my Makefiles, fire and forget.
  29.  
  30. >Awk is a poor imitation of snobol.  The very fact that you mentioned both
  31. >sed and awk is interesting also.  They do the same thing (or, to be more
  32. >precise, there's a *considerable* overlap in functionality).  Yet they 
  33. >do so differently - incompatibility!  [...]
  34.  
  35. The tool does so differently, but the output is exactly the same -- a stream
  36. of text terminated by an EOF, formatted according to your specifications.
  37. That they don't work the same is unimportant; MS Word and Windows 3.1 notepad
  38. don't work the same, either.  Neither do 'rn' and 'vi'.  They're different
  39. tools entirely.
  40.  
  41. >If UNIX were true to it's creed
  42. >(simple orthogonal tools each doing one thing *well* and piping them
  43. >together), there would be one tool - or at least the two would have
  44. >identical syntaxes for the overlapping parts of their operations.
  45.  
  46. Nobody's forcing you to use sed and awk at the same time.  In fact, if
  47. you like, you can delete awk from your disk and just use sed.  Or delete
  48. both and just use 'tr'.  Or delete that and just use 'if' and 'echo' and
  49. 'cat'.  If you want to use a single interface to text, then by all means
  50. use the 'sed family' -- ed, sed, vi.  The other tools are there for
  51. your convenience, not as an ultimatum.
  52.  
  53. >|> Err, these 'GUI's you keep referring to are faster than /bin/rc?
  54. >
  55.  
  56. >The /bin/rc I have access to is part of the system boot sequence and is 
  57. >not a part of the naive user envoronment at all.  What relevance to does 
  58. >it have to a discussion about user-level tools?  I'm talking about tools
  59.  
  60. /bin/rc on most sane, happy computer systems is the RC shell, written I
  61. believe by Rob Pike et al.  It provides a very small, very compact and
  62. elegant C like shell which starts up, on my computer, in about .3 realtime
  63. seconds.  By comparison, X takes about 3 minutes.  Maybe you're confusing
  64. /etc/rc with /bin/rc?
  65.  
  66. >|> But they are.  sed, awk, perl, tr, pr, nroff, troff, ls, tbl, pic, eqn,
  67. >|> rm, and all the other programs in my /[usr/]bin perform completely correctly
  68. >|> and predictably when placed in pipes.  Maybe there's something integral
  69. >|> to the process which you're failing to understand.
  70.  
  71. >Yes, I fail to understand why your list contains several tools (nroff,
  72. >troff, tbl, eqn, etc.) which are individually as difficult to learn
  73.  
  74. Difficulty of learning was not the topic.  Orthogonality was the topic.
  75. You claimed that these commands do not pipe together, and that they do
  76. things in different ways -- I presented a list of commands which not only
  77. pipe together, but together form an extremely powerful development environment,
  78. given correct selection.
  79.  
  80. >[...]  However, the low quality and long learning
  81. >curve of these tools is probably the reason that the world is 
  82. >moving away from the piped-tools model and going toward integrated
  83. >environments - for word processing anyway.
  84.  
  85. Which reminds me, TeX and LaTeX also pipe together just fine on my box,
  86. and I get perfect camera ready postscript copy whenever I feel like it.
  87. I have the utmost degree of control over the finished product.
  88.  
  89. By comparison, I have PageMaker 4.0 for Windows.  I consider myself very good
  90. at PageMaker.  I do not believe that I can produce documents as exceedingly
  91. correct and portable with PM4 as I can with TeX.  In fact, the margin of error
  92. across several ported platforms is as much as an inch distance.  Can I correct
  93. this with PageMaker?  No.  Can I correct it with PostScript and TeX?  Yes.
  94.  
  95. >|> The failure you're experiencing with UNIX is in thinking that it's
  96. >|> a business productivity tool like Windows 3.1 or Quicken, to be compared
  97. >|> with MSDOS color GUI programs.  UNIX and C are research and development
  98. >|> tools.
  99. >
  100. >Yet, they're being promoted for use in production environments.  If they
  101. >are research and development tools, let the researchers and developers
  102. >keep them - hidden away and out of the rest of the public's way.  In 
  103. >any case UNIX and C are for research and development of systems and
  104. >system maintenence tools - not for, say, X-ray imaging or groundwater
  105. >flow or stock market analysis tools.
  106.  
  107. As it happens, UNIX is very good for large database applications such as
  108. Geographic Information Services, especially with PD software like GRASS 4.0
  109. floating around.  I bet it'd be great for groundwater flow and other large-
  110. scale multi-personnel analysis tasks.
  111.  
  112. >It also makes a poor system in research and development environments
  113. >if what's being researched and developed is not more system tools.
  114.  
  115. Years of reality have proven you wrong.  UNIX is really *great* for
  116. systems tools, but it does other things very well as well.  It might not
  117. do what you want it to do, but you're perfectly free to buy another OS
  118. and not get upset over UNIX, you know.
  119.  
  120. >Supercomputers, parallel syatems, etc. are not appropriate for a
  121. >minicomputer-level development systems.
  122.  
  123. Parse error near "parallel syatems, etc."
  124.  
  125. >|> [...]
  126. >|> I've spent 13 years on computers now, and I must confess I have no idea
  127. >|> what these secret tools you're referring to are.  Could you provide
  128. >|> concrete examples of a tool that is as easy to use as, say, sed, that
  129. >|> provides just as much power, but whose documentation is 'better laid
  130. >|> out'?
  131. >
  132. >Sed?  Easy to use?  I don't use it much because it's *not* easy to
  133. >use (and because most of what I do doesn't involve text filtering).  
  134.  
  135. You dodged my question.  Please provide concrete examples of a tool that
  136. is as easy to use as sed (or the standard unix tool of your choice),
  137. provides just as much power, but whose documentation is better laid out.
  138.  
  139. >In the 25 years I've been programming, the only system I remember
  140. >to *compare* with the difficulty of learning and using UNIX is OS/360.
  141. >And for the same reasons: *lots* of arcane trivia and poorly organized
  142. >manuals.  The terms `arcane' and `user friendly' are mutually exclusive.
  143. >UNIX is arcane.
  144.  
  145. Given.  So are most important professional products.  Tried to use
  146. FrameMaker without looking at the manual set yet?
  147.  
  148. >|> Right, there's your problem again -- assuming that businesses have a
  149. >|> need for UNIX, or that UNIX was designed for use in the commercial
  150. >|> marketplace.  I think Roell Piper has this misnotion too.
  151. >
  152. >No, Ive been claiming exactly what you just said: that there are 
  153. >environments where UNIX is not appropriate.
  154.  
  155. Actually, you've been claiming that UNIX is archaic, arcane, useless,
  156. built from improper tools, non-orthogonal, incomprehensible, worthless,
  157. huge, bloated, hard to learn, poorly documented, and out of date.  There
  158. is a world of difference.  Hundreds of thousands of people use UNIX daily
  159. and are quite happy about it.   What makes you right in particular and
  160. them wrong?  In particular: why are you so excited about UNIX being so
  161. bad, when you're absolutely free to use whatever OS you like?  Do they
  162. make you program in COBOL at lanl.gov or something?
  163.  
  164. >  I'm arguing *against*
  165. >the assumption you accuse me of making.  Since you are not recommending 
  166. >UNIX for environments for which it is not suited (like the person I was 
  167. >responding to), my comments don't apply to you.  I was responding to claims 
  168. >that UNIX *was* suited to these application domains - which is not so.
  169.  
  170. Unfortunately, you also seem to think that the only environment UNIX is
  171. sufficient for is systems design.  In this, you're incorrect.  Ask uunet
  172. for a list of .com sites sometime.
  173.  
  174. >|> I'm currently running a UNIX clone on a 386/25 with 4M of memory.
  175. >|> This is hardly a massive workhorse, and, since the kernel is less
  176. >|> than 1.2M large, I can also run X.  The cost to me?  $0.00. 
  177. >
  178. >Gee.  I wouldn't want to use up a third of my memory on *system* overhead!
  179. >And, I'll bet it uses 50M or more of your disk as well - at least if you've
  180. >got all the bundled tools installed.  For a single user PC clone, that's a 
  181. >*lot* of overhead.  Further, X, TCP/IP, and several other things have 
  182. >*nothing* to do with UNIX or the bundled UNIX environment I've been 
  183. >talking about - they were designed to be system/hardware independent.
  184.  
  185. Actually, with all of the system tools installed, and a complete copy of
  186. the source code, and all the man(1) pages, and 5M of my own personal code
  187. and text, and LaTeX, and TeX, and fonts, and X, and X source code, and
  188. X libraries, and GCC, and all the GCC libraries, and Groff, and all the
  189. Groff libraries, utilities and fonts, and beta TCP/IP code, and UUCP, and
  190. three editors, and sendmail, mail, elm, all the standard X utilities,
  191. several X games, moria, nethack and sokoban, I come in at a hair under
  192. 30M on disk.  Dhrystones?  I completely crush a medium-sized VAX in all
  193. but the floating point tests, and that only because I don't have a
  194. coprocessor.
  195.  
  196. Let me relate to you a little story:
  197.  
  198. A man comes in to a massive warehouse.  Mechanics are hurrying back and
  199. forth, working on enormous pieces of machinery.  Huge cranes ferry molten
  200. iron vats from one end to the other.  Overseers chart the progress of their
  201. factory from catwalks above.  The entire right wall of the factory is covered
  202. with tools -- Allen wrenches, 5.2" socket bitwisters, screwdrivers, ice
  203. mallets, lathe press drill molds, shearing tweezers -- all alphabetically
  204. organized, all within easy reach.  Bulldozers and tractors move concrete 
  205. blocks with precision into the assembly lines.
  206.  
  207. The man complains, "hey!  None of this can balance my checkbook!"
  208.  
  209. >---
  210. >J. Giles
  211. -- 
  212. ----------------------------------------------------------------------------
  213. Felix Sebastian Gallo                              rhodesia@wixer.cactus.org
  214. ----------------------------------------------------------------------------
  215.