home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!pipex!warwick!warwick!not-for-mail
- From: phudl@csv.warwick.ac.uk (Mr S J Liddicott)
- Newsgroups: rec.humor
- Subject: Re: REAL Programmers's Guide
- Date: 17 Nov 1992 16:26:42 -0000
- Organization: Computing Services, University of Warwick, UK
- Lines: 692
- Message-ID: <1eb6g2INNran@clover.csv.warwick.ac.uk>
- References: <zxmna01.722008190@studserv>
- NNTP-Posting-Host: clover.csv.warwick.ac.uk
- Keywords: humor programming
-
- In article <zxmna01.722008190@studserv> zxmna01@studserv.zdv.uni-tuebingen.de (Brian Nash) writes:
- >
- >I'm looking for a copy of a humor guide that I once saw, it was entitled
- >'The Real Programmer's Guide' and listed a bunch of sayings and things...
-
- - Real programmers don't write specs. Users should consider
- themselves lucky to get any programs at all and take what they get.
-
- - Real programmers don't comment their code. If it was hard to
- write, it should be hard to read.
-
- - Real programmers don't write application programs, they pro-
- gram right down on the bare metal. Application programming
- is for feebs who can't do systems programming.
-
- - Real programmers don't eat quiche. Real programmers don't even know how to
- spell quiche. They eat Twinkies, Coke and palate-scorching Szechwan food.
-
- - Real programmers don't draw flowcharts. Flowcharts are, after all, the
- illiterate's form of documentation. Cavemen drew flowcharts; look how
- much it did for them.
-
- - Real programmers don't read manuals. Reliance on a reference is a hallmark
- of the novice and the coward.
-
- - Real programmers programs never work right the first time.
- But if you throw them on the machine they can be patched
- into working in only a few 30-hours debugging sessions.
-
- - Real programmers don't use Fortran. Fortran is for wimpy engineers who
- wear white socks, pipe stress freaks, and crystallography weenies. They
- get excited over finite state analysis and nuclear reactor simulation.
-
- - Real programmers don't use COBOL. COBOL is for wimpy application
- programmers.
-
- - Real programmers never work 9 to 5. If any real programmers
- are around at 9 am, it's because they were up all night.
-
- - Real programmers don't write in BASIC. Actually, no program-
- mers write in BASIC, after the age of 12.
-
- - Real programmers don't document. Documentation is for simps
- who can't read the listings or the object deck.
-
- - Real programmers don't write in Pascal, or Bliss, or Ada, or
- any of those pinko computer science languages. Strong typing
- is for people with weak memories.
-
- - Real programmers know better than the users what they need.
-
- - Real programmers think structured programming is a communist
- plot.
-
- - Real programmers don't use schedules. Schedules are for man-
- ager's toadies. Real programmers like to keep their manager
- in suspense.
-
- - Real programmers think better when playing adventure.
-
- - Real programmers don't use PL/I. PL/I is for insecure momma's boys
- who can't choose between COBOL and Fortran.
-
- - Real programmers don't use APL, unless the whole program can be written
- on one line.
-
- - Real programmers don't use LISP. Only effeminate programmers use more
- parentheses than actual code.
-
- - Real programmers disdain structured programming. Structured programming
- is for compulsive, prematurely toilet-trained neurotics who wear neckties
- and carefully line up sharpened pencils on an otherwise uncluttered desk.
-
- - Real programmers don't like the team programming concept. Unless, of
- course, they are the Chief Programmer.
-
- - Real programmers have no use for managers. Managers are a necessary evil.
- Managers are for dealing with personnel bozos, bean counters, senior
- planners and other mental defectives.
-
- - Real programmers scorn floating point arithmetic. The decimal point was
- invented for pansy bedwetters who are unable to "think big."
-
- - Real programmers don't drive clapped-out Mavericks. They prefer BMWs,
- Lincolns or pick-up trucks with floor shifts. Fast motorcycles are
- highly regarded.
-
- - Real programmers don't believe in schedules. Planners make up schedules.
- Managers "firm up" schedules. Frightened coders strive to meet schedules.
- Real programmers ignore schedules.
-
- - Real programmers like vending machine popcorn. Coders pop it in the
- microwave oven. Real programmers use the heat given off by the cpu.
- They can tell what job is running just by listening to the rate of popping.
-
- - Real programmers know every nuance of every instruction and use them all
- in every real program. Puppy architects won't allow execute instructions
- to address another execute as the target instruction. Real programmers
- despise such petty restrictions.
-
- - Real programmers don't bring brown bag lunches to work. If the vending
- machine sells it, they eat it. If the vending machine doesn't sell it,
- they don't eat it. Vending machines don't sell quiche.
-
- -------------------------------------------------------------------------------
-
- "Real Programmers Don't Use PASCAL"
-
- +------------------------------------------------------+
- |Ed Post, "Real Programmers Don't Use Pascal", |
- |_DATAMATION_, July 1983, pp. 263-265 (Readers' Forum).|
- +------------------------------------------------------+
-
- Back in the good old days -- the "Golden Era" of computers, it was easy
- to separate the men from the boys (sometimes called "Real Men" and "Quiche
- Eaters" in the literature). During this period, the Real Men were the ones that
- understood computer programming, and the Quiche Eaters were the ones that
- didn't. A real computer programmer said things like "DO 10 I=1,10" and "ABEND"
- (they actually talked in capital letters, you understand), and the rest of the
- world said things like "computers are too complicated for me" and "I can't
- relate to computers -- they're so impersonal". (A previous work [1] points out
- that Real Men don't "relate" to anything, and aren't afraid of being
- impersonal.)
-
- But, as usual, times change. We are faced today with a world in which
- little old ladies can get computers in their microwave ovens, 12-year-old kids
- can blow Real Men out of the water playing Asteroids and Pac-Man, and anyone
- can buy and even understand their very own Personal Computer. The Real
- Programmer is in danger of becoming extinct, of being replaced by high-school
- students with TRASH-80's.
-
- There is a clear need to point out the differences between the typical
- high-school junior Pac-Man player and a Real Programmer. If this difference is
- made clear, it will give these kids something to aspire to -- a role model, a
- Father Figure. It will also help explain to the employers of Real Programmers
- why it would be a mistake to replace the Real Programmers on their staff with
- 12-year-old Pac-Man players (at a considerable salary savings).
-
-
- LANGUAGES
- ---------
-
- The easiest way to tell a Real Programmer from the crowd is by the
- programming language he (or she) uses. Real Programmers use FORTRAN. Quiche
- Eaters use PASCAL. Nicklaus Wirth, the designer of PASCAL, gave a talk once at
- which he was asked "How do you pronounce your name?". He replied, "You can
- either call me by name, pronouncing it 'Veert', or call me by value, 'Worth'."
- One can tell immediately from this comment that Nicklaus Wirth is a Quiche
- Eater. The only parameter passing mechanism endorsed by Real Programmers is
- call-by-value-return, as implemented in the IBM\370 FORTRAN-G and H compilers.
- Real programmers don't need all these abstract concepts to get their jobs done
- -- they are perfectly happy with a keypunch, a FORTRAN IV compiler, and a beer.
-
- * Real Programmers do List Processing in FORTRAN.
-
- * Real Programmers do String Manipulation in FORTRAN.
-
- * Real Programmers do Accounting (if they do it at all) in FORTRAN.
-
- * Real Programmers do Artificial Intelligence programs in FORTRAN.
-
- If you can't do it in FORTRAN, do it in assembly language. If you can't do it
- in assembly language, it isn't worth doing.
-
-
-
-
-
- STRUCTURED PROGRAMMING
- ----------------------
-
- The academics in computer science have gotten into the "structured
- programming" rut over the past several years. They claim that programs are more
- easily understood if the programmer uses some special language constructs and
- techniques. They don't all agree on exactly which constructs, of course, and
- the examples they use to show their particular point of view invariably fit on
- a single page of some obscure journal or another -- clearly not enough of an
- example to convince anyone. When I got out of school, I thought I was the best
- programmer in the world. I could write an unbeatable tic-tac-toe program, use
- five different computer languages, and create 1000-line programs that WORKED.
- (Really!) Then I got out into the Real World. My first task in the Real World
- was to read and understand a 200,000-line FORTRAN program, then speed it up by
- a factor of two. Any Real Programmer will tell you that all the Structured
- Coding in the world won't help you solve a problem like that -- it takes actual
- talent. Some quick observations on Real Programmers and Structured Programming:
-
- * Real Programmers aren't afraid to use GOTO's.
-
- * Real Programmers can write five-page-long DO loops without
- getting confused.
-
- * Real Programmers like Arithmetic IF statements -- they make the
- code more interesting.
-
- * Real Programmers write self-modifying code, especially if they can
- save 20 nanoseconds in the middle of a tight loop.
-
- * Real Programmers don't need comments -- the code is obvious.
-
- * Since FORTRAN doesn't have a structured IF, REPEAT ... UNTIL, or
- CASE statement, Real Programmers don't have to worry about not
- using them. Besides, they can be simulated when necessary using
- assigned GOTO's.
-
- Data Structures have also gotten a lot of press lately. Abstract Data
- Types, Structures, Pointers, Lists, and Strings have become popular in certain
- circles. Wirth (the above-mentioned Quiche Eater) actually wrote an entire book
- [2] contending that you could write a program based on data structures, instead
- of the other way around. As all Real Programmers know, the only useful data
- structure is the Array. Strings, lists, structures, sets -- these are all
- special cases of arrays and can be treated that way just as easily without
- messing up your programing language with all sorts of complications. The worst
- thing about fancy data types is that you have to declare them, and Real
- Programming Languages, as we all know, have implicit typing based on the first
- letter of the (six character) variable name.
-
-
-
-
-
-
-
-
- OPERATING SYSTEMS
- -----------------
-
- What kind of operating system is used by a Real Programmer? CP/M? God
- forbid -- CP/M, after all, is basically a toy operating system. Even little
- old ladies and grade school students can understand and use CP/M.
-
- Unix is a lot more complicated of course -- the typical Unix hacker
- never can remember what the PRINT command is called this week -- but when it
- gets right down to it, Unix is a glorified video game. People don't do Serious
- Work on Unix systems: they send jokes around the world on UUCP-net and write
- adventure games and research papers.
-
- No, your Real Programmer uses OS\370. A good programmer can find and
- understand the description of the IJK305I error he just got in his JCL manual.
- A great programmer can write JCL without referring to the manual at all. A
- truly outstanding programmer can find bugs buried in a 6 megabyte core dump
- without using a hex calculator. (I have actually seen this done.)
-
- OS is a truly remarkable operating system. It's possible to destroy
- days of work with a single misplaced space, so alertness in the programming
- staff is encouraged. The best way to approach the system is through a keypunch.
- Some people claim there is a Time Sharing system that runs on OS\370, but after
- careful study I have come to the conclusion that they were mistaken.
-
-
- PROGRAMMING TOOLS
- ----------------
-
- What kind of tools does a Real Programmer use? In theory, a Real
- Programmer could run his programs by keying them into the front panel of the
- computer. Back in the days when computers had front panels, this was actually
- done occasionally. Your typical Real Programmer knew the entire bootstrap
- loader by memory in hex, and toggled it in whenever it got destroyed by his
- program. (Back then, memory was memory -- it didn't go away when the power went
- off. Today, memory either forgets things when you don't want it to, or
- remembers things long after they're better forgotten.) Legend has it that
- Seymore Cray, inventor of the Cray I supercomputer and most of Control Data's
- computers, actually toggled the first operating system for the CDC7600 in on
- the front panel from memory when it was first powered on. Seymore, needless to
- say, is a Real Programmer.
-
- One of my favorite Real Programmers was a systems programmer for Texas
- Instruments. One day he got a long distance call from a user whose system had
- crashed in the middle of saving some important work. Jim was able to repair the
- damage over the phone, getting the user to toggle in disk I/O instructions at
- the front panel, repairing system tables in hex, reading register contents back
- over the phone. The moral of this story: while a Real Programmer usually
- includes a keypunch and lineprinter in his toolkit, he can get along with just
- a front panel and a telephone in emergencies.
-
-
-
-
-
-
-
- In some companies, text editing no longer consists of ten engineers
- standing in line to use an 029 keypunch. In fact, the building I work in
- doesn't contain a single keypunch. The Real Programmer in this situation has to
- do his work with a "text editor" program. Most systems supply several text
- editors to select from, and the Real Programmer must be careful to pick one
- that reflects his personal style. Many people believe that the best text
- editors in the world were written at Xerox Palo Alto Research Center for use on
- their Alto and Dorado computers [3]. Unfortunately, no Real Programmer would
- ever use a computer whose operating system is called SmallTalk, and would
- certainly not talk to the computer with a mouse.
-
- Some of the concepts in these Xerox editors have been incorporated into
- editors running on more reasonably named operating systems -- EMACS and VI
- being two. The problem with these editors is that Real Programmers consider
- "what you see is what you get" to be just as bad a concept in Text Editors as
- it is in women. No the Real Programmer wants a "you asked for it, you got it"
- text editor -- complicated, cryptic, powerful, unforgiving, dangerous. TECO, to
- be precise.
-
- It has been observed that a TECO command sequence more closely
- resembles transmission line noise than readable text [4]. One of the more
- entertaining games to play with TECO is to type your name in as a command line
- and try to guess what it does. Just about any possible typing error while
- talking with TECO will probably destroy your program, or even worse --
- introduce subtle and mysterious bugs in a once working subroutine.
-
- For this reason, Real Programmers are reluctant to actually edit a
- program that is close to working. They find it much easier to just patch the
- binary object code directly, using a wonderful program called SUPERZAP (or its
- equivalent on non-IBM machines). This works so well that many working programs
- on IBM systems bear no relation to the original FORTRAN code. In many cases,
- the original source code is no longer available. When it comes time to fix a
- program like this, no manager would even think of sending anything less than a
- Real Programmer to do the job -- no Quiche Eating structured programmer would
- even know where to start. This is called "job security".
-
- Some programming tools NOT used by Real Programmers:
-
- * FORTRAN preprocessors like MORTRAN and RATFOR. The Cuisinarts of
- programming -- great for making Quiche. See comments above on
- structured programming.
-
- * Source language debuggers. Real Programmers can read core dumps.
-
- * Compilers with array bounds checking. They stifle creativity, destroy
- most of the interesting uses for EQUIVALENCE, and make it impossible
- to modify the operating system code with negative subscripts. Worst of
- all, bounds checking is inefficient.
-
- * Source code maintenance systems. A Real Programmer keeps his code
- locked up in a card file, because it implies that its owner cannot
- leave his important programs unguarded [5].
-
-
-
-
-
-
-
- THE REAL PROGRAMMER AT WORK
- ---------------------------
-
- Where does the typical Real Programmer work? What kind of programs are
- worthy of the efforts of so talented an individual? You can be sure that no
- Real Programmer would be caught dead writing accounts-receivable programs in
- COBOL, or sorting mailing lists for People magazine. A Real Programmer wants
- tasks of earth-shaking importance (literally!).
-
- * Real Programmers work for Los Alamos National Laboratory, writing
- atomic bomb simulations to run on Cray I supercomputers.
-
- * Real Programmers work for the National Security Agency, decoding
- Russian transmissions.
-
- * It was largely due to the efforts of thousands of Real Programmers
- working for NASA that our boys got to the moon and back before
- the Russkies.
-
- * Real Programmers are at work for Boeing designing the operating
- systems for cruise missiles.
-
- Some of the most awesome Real Programmers of all work at the Jet
- Propulsion Laboratory in California. Many of them know the entire operating
- system of the Pioneer and Voyager spacecraft by heart. With a combination of
- large ground-based FORTRAN programs and small spacecraft-based assembly
- language programs, they are able to do incredible feats of navigation and
- improvisation -- hitting ten-kilometer wide windows at Saturn after six years
- in space, repairing or bypassing damaged sensor platforms, radios, and
- batteries. Allegedly, one Real Programmer managed to tuck a pattern-matching
- program into a few hundred bytes of unused memory in a Voyager spacecraft that
- searched for, located, and photographed a new moon of Jupiter.
-
- The current plan for the Galileo spacecraft is to use a gravity assist
- trajectory past Mars on the way to Jupiter. This trajectory passes within 80
- +/-3 kilometers of the surface of Mars. Nobody is going to trust a PASCAL
- program (or a PASCAL programmer) for navigation to these tolerances.
-
- As you can tell, many of the world's Real Programmers work for the U.S.
- Government -- mainly the Defense Department. This is as it should be.
- Recently, however, a black cloud has formed on the Real Programmer horizon. It
- seems that some highly placed Quiche Eaters at the Defense Department decided
- that all Defense programs should be written in some grand unified language
- called "ADA" ((C), DoD). For a while, it seemed that ADA was destined to
- become a language that went against all the precepts of Real Programming -- a
- language with structure, a language with data types, strong typing, and
- semicolons. In short, a language designed to cripple the creativity of the
- typical Real Programmer. Fortunately, the language adopted by DoD has enough
- interesting features to make it approachable -- it's incredibly complex,
- includes methods for messing with the operating system and rearranging memory,
- and Edsgar Dijkstra doesn't like it [6]. (Dijkstra, as I'm sure you know, was
- the author of "GoTos Considered Harmful" -- a landmark work in programming
- methodology, applauded by PASCAL programmers and Quiche Eaters alike.) Besides,
- the determined Real Programmer can write FORTRAN programs in any language.
-
-
-
-
-
-
-
- The Real Programmer might compromise his principles and work on
- something slightly more trivial than the destruction of life as we know it,
- providing there's enough money in it. There are several Real Programmers
- building video games at Atari, for example. (But not playing them -- a Real
- Programmer knows how to beat the machine every time: no challenge in that.)
- Everyone working at LucasFilm is a Real Programmer. (It would be crazy to turn
- down the money of fifty million Star Trek fans.) The proportion of Real
- Programmers in Computer Graphics is somewhat lower than the norm, mostly
- because nobody has found a use for computer graphics yet. On the other hand,
- all computer graphics is done in FORTRAN, so there are a fair number of people
- doing graphics in order to avoid having to write COBOL programs.
-
- Real Programmers... p. 7
-
-
- THE REAL PROGRAMMER AT PLAY
- ---------------------------
-
- Generally, the Real Programmer plays the same way he works -- with
- computers. He is constantly amazed that his employer actually pays him to do
- what he would be doing for fun anyway (although he is careful not to express
- this opinion out loud). Occasionally, the Real Programmer does step out of the
- office for a breath of fresh air and a beer or two. Some tips on recognizing
- Real Programmers away from the computer room:
-
- * At a party, the Real Programmers are the ones in the corner talking
- about operating system security and how to get around it.
-
- * At a football game, the Real Programmer is the one comparing the plays
- against his simulations printed on 11 by 14 fanfold paper.
-
- * At the beach, the Real Programmer is the one drawing flowcharts in
- the sand.
-
- * At a funeral, the Real Programmer is the one saying "Poor George. And he
- almost had the sort routine working before the coronary."
-
- * In a grocery store, the Real Programmer is the one who insists on running
- the cans past the laser checkout scanner himself, because he never could
- trust keypunch operators to get it right the first time.
-
-
-
-
-
-
- THE REAL PROGRAMMER'S NATURAL HABITAT
- -------------------------------------
-
- What sort of environment does the Real Programmer function best in?
- This is an important question for the managers of Real Programmers. Considering
- the amount of money it costs to keep one on the staff, it's best to put him (or
- her) in an environment where he can get his work done.
-
- The typical Real Programmer lives in front of a computer terminal.
- Surrounding this terminal are:
-
- * Listings of all programs the Real Programmer has ever worked on, piled in
- roughly chronological order on every flat surface in the office.
-
- * Some half-dozen or so partly filled cups of cold coffee. Occasionally,
- there will be cigarette butts floating in the coffee. In some cases,
- the cups will contain Orange Crush.
-
- * Unless he is very good, there will be copies of the OS JCL manual and the
- Principles of Operation open to some particularly interesting pages.
-
- * Taped to the wall is a line-printer Snoopy calendar for the year 1969.
-
- * Strewn about the floor are several wrappers for peanut butter filled
- cheese bars -- the type that are made pre-stale at the bakery so they
- can't get any worse while waiting in the vending machine.
-
- * Hiding in the top left-hand drawer of the desk is a stash of double-stuff
- Oreos for special occasions.
-
- * Underneath the Oreos is a flowcharting template, left there by the
- previous occupant of the office. (Real Programmers write programs, not
- documentation. Leave that to the maintenance people.)
-
-
- The Real Programmer is capable of working 30, 40, even 50 hours at a
- stretch, under intense pressure. In fact, he prefers it that way. Bad response
- time doesn't bother the Real Programmer -- it gives him a chance to catch a
- little sleep between compiles. If there is not enough schedule pressure on the
- Real Programmer, he tends to make things more challenging by working on some
- small but interesting part of the problem for the first nine weeks, then
- finishing the rest in the last week, in two or three 50-hour marathons. This
- not only impresses the hell out of his manager, who was despairing of ever
- getting the project done on time, but creates a convenient excuse for not doing
- the documentation. In general:
-
- * No Real Programmer works 9 to 5 (unless it's the ones at night).
-
- * Real Programmers don't wear neckties.
-
- * Real Programmers don't wear high-heeled shoes.
-
- * Real Programmers arrive at work in time for lunch [9].
-
- * A Real Programmer might or might not know his wife's name. He does,
- however, know the entire ASCII (or EBCDIC) code table.
-
- * Real Programmers don't know how to cook. Grocery stores aren't open at
- three in the morning. Real Programmers survive on Twinkies and coffee.
-
-
-
-
-
-
-
- THE FUTURE
- ----------
-
- What of the future? It is a matter of some concern to Real Programmers
- that the latest generation of computer programmers are not being brought up
- with the same outlook on life as their elders. Many of them have never seen a
- computer with a front panel. Hardly anyone graduating from school these days
- can do hex arithmetic without a calculator. College graduates these days are
- soft -- protected from the realities of programming by source level debuggers,
- text editors that count parentheses, and "user friendly" operating systems.
- Worst of all, some of these alleged "computer scientists" manage to get degrees
- without ever learning FORTRAN! Are we destined to become an industry of Unix
- hackers and PASCAL programmers?
-
- From my experience, I can only report that the future is bright for
- Real Programmers everywhere. Neither OS\370 nor FORTRAN show any signs of dying
- out, despite all the efforts of PASCAL programmers the world over. Even more
- subtle tricks, like adding structured coding constructs to FORTRAN have failed.
- Oh sure, some computer vendors have come out with FORTRAN 77 compilers, but
- every one of them has a way of converting itself back into a FORTRAN 66
- compiler at the drop of an option card -- to compile DO loops like God meant
- them to be.
-
- Even Unix might not be as bad on Real Programmers as it once was. The
- latest release of Unix has the potential of an operating system worthy of any
- Real Programmer -- two different and subtly incompatible user interfaces, an
- arcane and complicated teletype driver, virtual memory. If you ignore the fact
- that it's "structured", even 'C' programming can be appreciated by the Real
- Programmer: after all, there's no type checking, variable names are seven (ten?
- eight?) characters long, and the added bonus of the Pointer data type is thrown
- in -- like having the best parts of FORTRAN and assembly language in one place.
- (Not to mention some of the more creative uses for #define.)
-
- No, the future isn't all that bad. Why, in the past few years, the
- popular press has even commented on the bright new crop of computer nerds and
- hackers ([7] and [8]) leaving places like Stanford and M.I.T. for the Real
- World. From all evidence, the spirit of Real Programming lives on in these
- young men and women. As long as there are ill-defined goals, bizarre bugs,
- and unrealistic schedules, there will be Real Programmers willing to jump in
- and Solve The Problem, saving the documentation for later. Long live FORTRAN!
-
-
- ACKNOWLEGEMENT
- --------------
-
- I would like to thank Jan E., Dave S., Rich G., Rich E., for their help
- in characterizing the Real Programmer, Heather B. for the illustration, Kathy
- E. for putting up with it, and atd!avsdS:mark for the initial inspiration.
-
-
-
-
-
-
-
- REFERENCES
- ----------
-
- [1] Feirstein, B., "Real Men don't Eat Quiche", New
- York, Pocket Books, 1982.
-
- [2] Wirth, N., "Algorithms + Data Structures =
- Programs", Prentice Hall, 1976.
-
- [3] Ilson, R., "Recent Research in Text Processing",
- IEEE Trans. Prof. Commun., Vol. PC-23, No. 4,
- Dec. 4, 1980.
-
- [4] Finseth, C., "Theory and Practice of Text Editors
- -- or -- a Cookbook for an EMACS", B.S. Thesis,
- MIT/LCS/TM-165, Massachusetts Institute of
- Technology, May 1980.
-
- [5] Weinberg, G., "The Psychology of Computer
- Programming", New York, Van Nostrand Reinhold,
- 1971, p. 110.
-
- [6] Dijkstra, E., "On the GREEN language submitted to
- the DoD", Sigplan notices, Vol. 3 No. 10, Oct
- 1978.
-
- [7] Rose, Frank, "Joy of Hacking", Science 82, Vol. 3
- No. 9, Nov 82, pp. 58-66.
-
- [8] "The Hacker Papers", Psychology Today, August 1980.
-
- [9] sdcarl!lin, "Real Programmers", UUCP-net, Thu Oct
- 21 16:55:16 1982
-
-
-
-
-
- DICTIONARY
- ----------
-
- ABEND:
- The IBM term for ABortive END. It's what you do to bring the system
- down when all else fails. Also, (jokingly) the command issued to
- the system to enable the third-shift operators to leave early
- (from the german Guten Abend, meaning good evening).
-
- Real Men Don't Eat Quiche:
- It's a wonderful little booklet, describing, with a lot of humor,
- how a Modern Real Man can live in a world of quiche eaters.
-
- Cuisinart:
- State-of-the-art, and rather expensive, brand of food processor.
-
- Call-by-value-return:
- This is how FORTRAN compilers usually pass parameters to subroutines.
- It's not the same as call by reference (or by name), since you are
- not passing the addresses (references to) each individual parameter,
- but rather both the caller and the callee know where the parameter
- block is and deal with it appropriately.
-
- Arithmetic-IF statements:
- Computed GOTO:
- Assigned GOTO:
- `Interesting' FORTRAN constructs: An arithmetic if is a statement
- like this:
- IF (expression) label1,label2,label3
- If expression evaluates to negative, zero, or positive, the execution
- will continue at label1, label2 or label3, respectively. In
- REAL FORTRAN, of course, expression is just an integer variable!
- A computed GOTO is like the ON GOTO in BASIC (yuck!):
- GOTO (label1,label2,...,labeln),N
- when N is an index into the list of labels. If N<0 or N>n
- the following statement is executed.
- An assigned GOTO is a bit different. You can assigne a label to
- an integer variable using the ASSIGN statement; you can say
- ASSIGN 10 TO IFOO, and then use IFOO as a label (e.g., GOTO IFOO). The
- GOTO IFOO (label1,label2,...,labeln) statement branches to that
- label matched by IFOO. If none is matched, execution continues. It's
- used when IFOO can have been set to a variety of labels, but
- you only want to branch is it has been set to some particular values.
- You can say it's a set membership operation! Now, how many
- CS seniors know that, I wonder!
-
- CP/M:
- Control Program for Microcomputers. A very antiquated (ca 1978?)
- rudimentary operating system for 8080-based microcomuters. Would
- have been picked up by IBM instead of MSDOS, (then called QDOS)
- had the president of Digital Research not been out to lunch with
- instructions not to be interrupted!
-
- IJK305I:
- IBM messages are usually three letters (indicating the module
- the error occured in), followed by a number, followed by a letter
- indicating the severity of the error. I is Information. IJK is
- a fictitious prefiex. The closest to that one is IKJ, which is
- the MVS (then OS) nucleus, if my memory serves me right. (I actually
- tried to look up this message when I was working for IBM!)
-
- Orange Crush:
- Fluorescent-orange colored liquid, kind of like orange soda without
- the carbonation. Gross.
-
- Peanut-butter-filled-cheese-bars:
- Vending-machine type of junk food. Also available at supermarket
- checkout counters. These are cheese-flavored (just flavored, no
- real cheese) crackers filled with rancid peanut butter or mock-cheese
- spread. Usually three one-square-inch sandwiches to a package.
-
- Double-stuffed Oreos:
- A brand of cookies made by Nabisco. They are `sandwich' cookies, two
- ~2 inch, very dark, supposedly chocolate-flavor cookies, with a
- vanilla-flavored stuffing. They are very common in the US.
-
- Twinkies:
- YA example of junk food. These are small cakes filled with some
- sort of custard. They are not too bad (taste-wise).
- --
- "the C shell is flakier than a snowstorm." (Guy Harris)
-
- --
- *----------*-------------------------------------------------------------*
- | Sam Jam|"Never underestimate the importance of a cheap laugh"- |
- | Liddicott| phudl@csv.warwick.ac.uk | I WAS IN IDAHO | Plucky Duck TTA |
- *---------------It's a thing that makes me go hmmm...--------------------*
-