home *** CD-ROM | disk | FTP | other *** search
/ Hall of Fame / HallofFameCDROM.cdr / other / mnapr91.lzh / NEW < prev    next >
Text File  |  1991-02-22  |  15KB  |  409 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.        ┌──────────┐
  10.        ╘╕  ╒═══╕  │
  11.         │  │   │  │ ┌──────┐ ┌──────┐ ┌──────┐ ┌──────┐ ┌──────┐ ┌─────┐
  12.         │  └───┘  │ │ ╒══╕ │ ╘╕ ╒═╕ │ ╘╕ ╒═╕ │ │ ╒══╕ │ │ ╒════╛ │ ╒═══╛
  13.         │  ╒═══╕  │ │ └──┘ │  │ └─┘ │  │ └─┘ │ │ └──┘ │ │ │ ┌──┐ │ └─┐
  14.         │  │   │  │ │ ╒══╕ │  │ ╒═╕ │  │ ╒═╕ │ │ ╒══╕ │ │ │ ╘╕ │ │ ╒═╛
  15.        ┌┘  └───┘  │ │ │  │ │ ┌┘ └─┘ │ ┌┘ └─┘ │ │ │  │ │ │ └──┘ │ │ └───┐
  16.        ╘══════════╛ ╘═╛  ╘═╛ ╘══════╛ ╘══════╛ ╘═╛  ╘═╛ ╘══════╛ ╘═════╛
  17.  
  18.  
  19.  
  20.  
  21.  
  22.  
  23.  
  24.  
  25.  
  26.  
  27.  
  28.                      Babbage - The Language of the Future
  29.  
  30. Babbage is based on language elements that were discovered after the design 
  31. of ADA was completed.  For instance, C. A. R.  Hare, in his 1980 Turing Award
  32. lecture, told of two ways of constructing a software design, "One way is to 
  33. make it so simple that there are obviously no deficiencies and the other way 
  34. is to make it so complicated that there are no obvious deficiencies."
  35.  
  36. The designers of Babbage have chosen a third alternative - a language that 
  37. has only obvious deficiencies.  Babbage programs are so unreliable that 
  38. maintenance can begin before system integration is completed.  This  guaran-
  39. tees a steady increase in the DP job marketplace.
  40.  
  41. Structured languages banned GOTOs and multiway conditional branches by 
  42. replacing them with the simpler IF-THEN-ELSE structure.  Babbage has a number 
  43. of new conditional statements that act like termites in the structure of your 
  44. program.
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53. WhatIf:             Used in simulation.  Branches before evaluating test
  54.                     conditions.
  55.  
  56. OrElse:             Conditional threat as in : "Add these two numbers OR
  57.                     ELSE!"
  58.  
  59. WhyNot:             Executes the code that follows in a devil-may-care Fash-
  60.                     ion.
  61.  
  62. WhoElse:            Used for polling during I/O operations.
  63.  
  64. Elsewhere:          This is where your program really is when you think its
  65.                     here.
  66.  
  67. GoingGoingGone:     For writing unstructured programs. Takes a random branch
  68.                     to  another part of your program.  Does the work of 10
  69.                     GOTOs.
  70.  
  71.  
  72.  
  73. For years, programming languages have used "For", "Do Until", "Do While", 
  74. etc. to mean "loop".  Continuing with this trend, Babbage offers the  follow-
  75. ing loop statements :
  76.  
  77. Don't Do While Not: This loop is not executed if the test condition is not 
  78.                     false (or if it's Friday afternoon) .
  79.  
  80. Didn't Do:          The loop executes once and hides all traces.
  81.  
  82. Can't Do:           The looped is pooped.
  83.  
  84. Won't Do:           The CPU halts because it doesn't like the code inside the
  85.                     loop.  Execution can be resumed by typing "May I" at the
  86.                     console.
  87.  
  88. Might Do:           Depends on how the CPU is feeling. Executed if the CPU is
  89.                     "up",  not executed if the CPU is "down", or if it feel-
  90.                     ings are hurt.
  91.  
  92. Do Unto Others:     Used to write the main loop for timesharing systems so
  93.                     that they will antagonize all users in a uniform manner.
  94.  
  95. DOWAH:              Used to write timing loops for computer-generated music.
  96.  
  97. Every self-respecting structured language has a case statement to implement 
  98. multiway branching.Algol offers an indexed case statement and Pascal has a 
  99. labelled case statement.  Not much of a choice. Babbage offer a variety of 
  100. case statements :
  101.  
  102. Just-In-Case STMT:            For handling afterthoughts and fudge factors.  
  103.                               Allows  you to multiply by zero to correct for
  104.                               accidentally dividing by zero.
  105.  
  106. The Brief Case STMT:          To encourage portable software.
  107.  
  108. The Open & Shut Case STMT:    No proof of correctness is necessary
  109.  
  110. The In Any Case STMT:         This one always works.
  111.  
  112. The Hopeless Case STMT:       This one never works.
  113.  
  114. The Basket Case STMT:         A really hopeless case.
  115.  
  116. The Babbage Language Design Group is continuously evaluating new features 
  117. that will keep it users from reaching any level of effectiveness.  For 
  118. instance, Babbage's designers are now considering the Almost Equals Sign used 
  119. for comparing two floating point numbers.  This new feature "takes the worry 
  120. out of even being close".
  121.  
  122.                         NEW LANGUAGES COMPETE WITH APL
  123.  
  124.        A Usually Reliable Source...
  125.        Digital Equipment Corporation...
  126.        Somewhere in New England...
  127.  
  128. APL, BASIC, FORTRAN, COBOL,... these programming languages are well known and 
  129. (more or less) well loved throughout the computer industry. There are 
  130. numerous other languages, however, that are less well known yet still have 
  131. ardent devotees. In fact, these little-known languages generally have the 
  132. most fanatic admirers. For those who wish to know more about these obscure 
  133. languages -- and why they are obscure -- we present the following:
  134.  
  135. SIMPLE:   SIMPLE is an acronym for Sheer Idiot's Monopurpose Programming
  136.           Linguistic  Environment. This language, developed at Hanover College
  137.           for Technological  Misfits, was designed to make it impossible to
  138.           write code with errors in it.  The statements are, therefore,
  139.           confined to BEGIN, END, and STOP. No matter  how you arrange the
  140.           statements, you can't make a syntax error.
  141.  
  142.           Programs written in SIMPLE do nothing useful. They thus achieve the
  143.           results  of programs written in other languages without the tedious,
  144.           frustrating  process of testing and debugging.
  145.  
  146.  
  147.  
  148.  
  149.  
  150.  
  151.  
  152.  
  153. SLOBOL:   SLOBOL is best known for the speed, or lack of it, of its compiler.
  154.           Although  many compilers allow you to take a coffee break while they
  155.           compile, SLOBOL  compilers allow you to travel to Bolivia to pick
  156.           the coffee. Forty-three  programmers are known to have died of
  157.           boredom sitting at their terminals  while waiting for a SLOBOL
  158.           program to compile.
  159.  
  160. VALGOL:   From its modest beginnings in Southern California's San Fernando
  161.           Valley,  VALGOL is enjoying a dramatic surge of popularity across
  162.           the industry.
  163.  
  164.           VALGOL commands include REALLY, LIKE, WELL, and Y*KNOW. Variables
  165.           are  assigned with the =LIKE and =TOTALLY operators. Other operators
  166.           include the  California Booleans, FERSURE and NOWAY. Repetitions of
  167.           code are handled in  FOR - SURE loops. Here is a sample VALGOL
  168.           program:
  169.  
  170.  
  171.  
  172.  
  173.  
  174.  
  175.                      LIKE Y*KNOW (I MEAN) START
  176.                      IF PIZZA =LIKE BITCHEN AND
  177.                      B =LIKE TUBULAR AND
  178.                      C =LIKE GRODY**MAX
  179.                           THEN
  180.                      
  181.                                FOR I =LIKE 1 TO OH MAYBE 100
  182.                                     DOWAH - (DITTY**2)
  183.                                     BARF(I) =TOTALLY GROSS(OUT)
  184.                      
  185.                                SURE
  186.                                     LIKE BAG THIS PROBLEM
  187.                                REALLY
  188.                                     LIKE TOTALLY(Y*KNOW)
  189.  
  190.      VALGOL is characterized by its unfriendly error messages. For example,
  191.      when  the user makes a syntax error, the interpreter displays the
  192.      message:  GAG ME WITH A SPOON!
  193.  
  194.  
  195.  
  196.  
  197.  
  198.  
  199. LAIDBACK: Historically, VALGOL is a derivative of LAIDBACK, which was devel-
  200.           oped at the  (now defunct) Marin County Center for T'ai Chi, Mellow-
  201.           ness, and Computer  Programming, as an alternative to the intense
  202.           atmosphere in nearby Silicon  Valley.
  203.  
  204.           The center was ideal for programmers who liked to soak in hot tubs
  205.           while they  worked. Unfortunately, few programmers could survive
  206.           there for long, since  the center outlawed pizza and RC Cola in
  207.           favor of bean curd and Perrier.
  208.  
  209.           Many mourn the demise of LAIDBACK because of its reputation as a
  210.           gentle and  nonthreatening language. For example, LAIDBACK responded
  211.           to syntax errors  with the message:
  212.  
  213.                SORRY MAN, I CAN'T DEAL BEHIND THAT.
  214.  
  215.  
  216.  
  217.  
  218.  
  219.  
  220.  
  221.  
  222. SARTRE:   Named after the late existential philosopher, SARTRE is an extremely 
  223.           unstructured language. Statements in SARTRE have no purpose; they
  224.           just are.  Thus SARTRE programs are left to define their own func-
  225.           tions. SARTRE  programmers tend to be boring and depressed and are
  226.           no fun at parties.
  227.  
  228. FIFTH:    FIFTH is a precision mathematical language in which the data types
  229.           refer to  quantity. The data types range from CC, OUNCE, SHOT, and
  230.           JIGGER to FIFTH  (hence the name of the language), LITER, MAGNUM,
  231.           and BLOTTO. Commands refer  to ingredients such as CHABLIS,
  232.           CHARDONNAY, CABERNET, GIN, VERMOUTH, VODKA,  SCOTCH, BOURBON,
  233.           CANADIAN, and WHATEVERSAROUND.
  234.  
  235.           The many versions of the FIFTH language reflect the sophistication
  236.           and  financial status of its users. Commands in the ELITE dialect
  237.           include VSOP,  LAFITE, and WAITER'S(RECOMMENDATION). The GUTTER
  238.           dialect instead has commands  for THUNDERBIRD, RIPPLE, and
  239.           HOUSE(RED). The GUTTER dialect is a particular  favorite of frus-
  240.           trated FORTH programmers who end up using this language.
  241.  
  242.  
  243.  
  244.  
  245.  
  246.  
  247.  
  248.  
  249. C-:       This language was named for the grade received by its creator when
  250.           he  submitted it as a project in a graduate programming class. C- is
  251.           best  described as a "low-level" programming language. In general,
  252.           the langauge  requires more C- statements than machine-code instruc-
  253.           tions to execute a given  task. In this respect it is very similar
  254.           to COBOL.
  255.  
  256. LITHP:    This otherwise unremarkable language is distinguished by the absence
  257.           of an  "S" in its character set. Programmers must substitute "TH".
  258.           LITHP is said to  be useful in prothething lithtth.
  259.  
  260. DOGO:     Developed at the Massachusetts Institute of Obedience Training, DOGO
  261.           heralds  a new era of computer-literate pets. DOGO commands include
  262.           SIT, STAY, HEEL,  and ROLL OVER. An innovative feature of DOGO is
  263.           "puppy graphics", a small  cocker spaniel that occasionally leaves
  264.           deposits as he travels across the  screen.
  265.  
  266.  
  267.  
  268. Here are some thoughts from Dijkstra article "How Do We Tell Truths that 
  269. Might Hurt?" in his book "Selected Writings on Computing" (Springer Verlag, 
  270. 1982):
  271.  
  272. FORTRAN, "the infantile disorder", by now nearly 20 years old, is hopelessly 
  273. inadequate for whatever computer application you have in mind today: it is 
  274. now too clumsy, too risky, and too expensive to use.
  275.  
  276. PL/I --"the fatal disease"--belongs more to the problem set than to the 
  277. solution set.
  278.  
  279. It is practically impossible to teach good programming to students that have 
  280. had a prior exposure to BASIC: as potential programmers they are mentally 
  281. mutilated beyond hope or regeneration.
  282.  
  283. The use of COBOL cripples the mind; its teaching should, therefore, be 
  284. regarded as a criminal offense.
  285.  
  286. APL is a mistake, carried through to perfection.  It is the language of the 
  287. future for the programming techniques of the past:it creates a new generation 
  288. of coding bums.
  289.  
  290.  
  291.  
  292.  
  293.  
  294. The problems of business administration in general and database management in 
  295. particular are much too difficult for people that think in IBMerese,  com-
  296. pounded with sloppy English.
  297.  
  298. About the use of language: it is impossible to sharpen a pencil with a blunt 
  299. axe.  It is equally vain to try to do it with ten blunt axes instead.
  300.  
  301. We can found no scientific discipline, nor a healthy profession, on the 
  302. technical mistakes of the Department of Defense and, mainly, one computer 
  303. manufacturer.
  304.  
  305. The use of anthropomorphic terminology when dealing with computing systems is 
  306. a symptom of professional immaturity.
  307.  
  308. In the good old days physicists repeated each other's experiments, just to be 
  309. sure.  Today they stick to FORTRAN, so that they can share each other's 
  310. programs, bugs included.
  311.  
  312.  
  313.  
  314.  
  315.  
  316.  
  317.  
  318. 3 Biggest Software Lies: 
  319.  
  320.                          The program's fully tested and bugfree.
  321.  
  322.                          We're working on the documentation.
  323.  
  324.                          Of course we can modify it.
  325.  
  326. 3 Biggest Computer Room Lies:
  327.  
  328.                          As long as you remember to 'SAVE' your input, you'll
  329.                          never lose any files.
  330.  
  331.                          We run the stuff through as fast as it comes in the
  332.                          door.
  333.  
  334.                          The new machine's on order.
  335.  
  336.  
  337.  
  338. 3 Biggest Large Company Lies:
  339.  
  340.                          We have an entrepreneurial spirit here.
  341.  
  342.                          People are our greatest resource.
  343.  
  344.                          We say 'let the marketplace decide'.
  345.  
  346. 3 Biggest Small Company Lies:
  347.  
  348.                          We have an entrepreneurial spirit here.
  349.  
  350.                          The boss is just one of the guys.
  351.  
  352.                          Staying small is a conscious decision.
  353.  
  354. 3 Biggest Marketing Lies:
  355.  
  356.                          Immediate delivery?...No problem.
  357.  
  358.                          We treat every customer as if they were our most
  359.                          important.
  360.  
  361.                          We're going out to lunch to talk business.
  362.  
  363.  
  364.  
  365.  
  366.  
  367. 3 Biggest Engineering Professor's Lies:
  368.  
  369.                          Some day this course will come in handy.
  370.  
  371.                          These tests are more trouble for me than they are for
  372.                          you.
  373.  
  374.                          This is the way they do it in industry.
  375.  
  376. 3 Biggest Executive Lies:
  377.  
  378.                          Money...it's just a score card.
  379.  
  380.                          If it were up to me, there'd be no assigned parking
  381.                          spaces.
  382.  
  383.                          You have to twist my arm to get me to go on a busi-
  384.                          ness trip.
  385.  
  386.  
  387. 3 Biggest Hardware Lies:
  388.  
  389.                          We always design for testablilty.
  390.  
  391.                          It worked fine on the proto board.
  392.  
  393.                          That would be much easier to implement in software.
  394.  
  395.  
  396.                               THREE PROPOSITIONS
  397.  
  398. 1.   Software engineering is like looking for a black cat in a dark room.
  399.  
  400. 2.   Systems engineering is like looking for a black cat in a dark room in 
  401.      which there is no cat.
  402.  
  403. 3.   Knowledge engineering is like looking for a black cat in a dark room
  404.      where  there is no cat and someone yells, "I got it!". 
  405.  
  406. ...MICRONEWS
  407.  
  408. Press the Left Arrow key for CONTENT Menu...
  409.