comp.lang.ada
 help / color / mirror / Atom feed
From: "Bob Jarvis" <nospam@thankyou.net>
Subject: Re: 'Money wanted' algorithm (Cobol version)
Date: 1996/12/31
Date: 1996-12-31T00:00:00+00:00	[thread overview]
Message-ID: <01bbf724$2fa0c7d0$c318b993@jarvisb> (raw)
In-Reply-To: 32c8f428.76407842@news.dwx.com


Renegade <renegade@dwx.com> wrote in article <32c8f428.76407842@news.dwx.com>...
> congee@mindspring.com (Deric Cheng) wrote:
> > (pseudocode and Pascal deleted for brevity)
> >Hey that's cool can you do it in Cobol?
> 
> Sure:

The code in this program does not conform to Corporate Standards and
must be rewritten prior to being stored permanently in the Corporate Library.
Please consult the appropriate documentation (ref. CorpStan 01-R97301
"Standards For Corporate Software and Other Anal-Retentive Stuff"), revise
your program, and resubmit.  In particular the following areas requiring revision
have been noted:

> IDENTIFICATION DIVISION.
> PROGRAM-ID 	MAKE-MONEY.
> AUTHOR	              MY- ASS.
> DATE-WRITTEN   TODAY.

The identification division lacks the appropriate copyright notice, liability
limitations, equal opportunity employment disclaimer, and vaguely threatening
legal language.  Inclusion of these clauses is required (ref. CorpStan 09-R4763
"Standards For The Inclusion Of Useless Comments and Boilerplate") unless
authorization for their non-inclusion has been previously granted by the 
Software Standards Exceptions Committee (ref. CorpStan A3-R1072 "Procedures
For Requesting Exceptions To Corporate Standards", CorpStan A16-R982
"Standard Exception Request Procedures", and CorpStan A87-R1071 "Procedural
Standards For Corporate Exceptions").  The Software Standards Exceptions
Committee meets on the sixth Thursday of each month to review all outstanding
exception requests.  Please plan on attending their next meeting.  Bring your own
kneepads and bandages.

> ENVIRONMENT DIVISION.
>    HOPEFULLY WARM.

As noted in Executive Memorandum #930831-102 the corporate heating and cooling
system schedule has been revised.  In years past the cooling system was run during
the summer, and the heating system was run during the winter.  Thanks to diligent
work on the part of some of our Junior Cost Accountants it was determined that
it is much more efficient to run the heating system during the summer, and the cooling
system during the winter.  During the past several years our company has realized
substantial savings from this schedule change.

In a related issue, the annual closing of the restrooms in the Corporate Office Building
is scheduled for September 30th so the water can be drained from the pipes.  As in past
years portable chemical toilets will be installed on the front lawn for the convenience of
all employees.  Please note that the toilets with the gold stars on the doors are for the
use of executives ONLY!  Thank you.

> DATA DIVISION.
> 
> ~~~~ YADA, YADA, YADA
> 01  HELL-IND                 PIC X     VALUE SPACES.
>    88 HELL-FROZEN                    VALUE 'Y'.
> 01   TIME-IND               PIC X      VALUE SPACES.
>    88  SUN-DOWN                        VALUE 'Y'.

The use of 88-levels has been disallowed (ref. CorpStan P23-99061 "Obfuscatory Coding
Methods" and CorpTechNote P37-0978 "Recommended Clarification Reduction Techniques").
Remember - analysts only have ten fingers and ten toes, so the use of any nesting level
greater than twenty is not allowed.

> PROCEDURE DIVISION.
> 
> MAIN.
>    PERFORM DAILY-ROUNTINE UNTIL HELL-FROZEN.
>    STOP-RUN.

The MAIN procedure in this program lacks the following necessary elements (ref. CorpStan
E7-83610 "Stuff You've Got To Put In Because We Say So"):
    1. Notification to the operator that the program has begun execution.
    2. Notification to the operator that the program has terminated.
    3. Notification to the operator that the program has notified the operator.
    4. Lots of bell ringing on the console to wake the operator up and/or distract him/her/it
        from whatever else it is they're doing.
    5. Setting a proper return code.  The following standard return codes have been defined
        to provide the operations staff with appropriate information about program status
        (ref. CorpStan P74-9876 "Standard Return Codes and Other Anal-Retentive Crap"):
            0   Program completed successfully, or forgot to set any other return code.
            4   Something went wrong.  We think it's minor.  Probably.
            8   An error has occurred.  Wait until 2:00 A.M., then call the programmer listed on
                 the call sheet.  The call sheet, of course, is out of date - the programmer listed
                 hasn't seen this code in years, doesn't know who's currently responsible for it,
                 and may in fact no longer work for the company.  No matter.  Keep calling
                 him/her/it once every five minutes.
           12  A serious error has occurred.  Ignore it.  It's probably not all that important.  Anyways,
                 if it *is* important someone on the day shift will take care of it.
           16  That glowing lump of slag in front of you *used* to be a computer.  Take your
                 lunch break.

> DAILY-ROUTINE.
>    PERFORM FIND-EMPTY-COFFEE-CUP.
>    PERFORM FIND-SPOT WITH TEST AFTER UNTIL LOCATION = "GOOD".
>    PERFORM SIT UNTIL SUN-DOWN.
>    IF HELL-TEMP < 32 
>         MOVE "Y" TO HELL-IND.

The paragraph named DAILY-ROUTINE does not conform to corporate standards
(ref. CorpStan K9-83902 "Proper Naming Of Paragraphs In Corporate Software").
The name of a paragraph must include the following elements, separated by dashes:
    1.  The eight-digit program number (e.g. P1234567).
    2.  The six-digit analysis tool ID for the superblock containing the functionality
         implemented by this paragraph (e.g. 42K7AB).
    3.  The flowchart name and block number for this paragraph (e.g. MAKEMONEY72).
    4.  The unique 16-digit Paragraph Identification Number assigned by the Paragraph
         Serialization Committee.  See CorpStan K6-8362 "Procedures for Requesting
         Paragraph Identification Numbers".  Submit all forms in triplicate.  Give three
         examples.  Show your work.
    5.  A descriptive name for the paragraph, which must not be more than 6 characters
         long.

Thus, an appropriate and correct paragraph name might be

    P1234567-42K7AB-MAKEMONEY72-9384750532894761-DLYRTN

Please make similar corrections on all affected non-standard paragraph names in this
program.

> FIND-EMPTY-COFFEE-CUP.
>    FIND COFFEE-CUP.
>    IF COFFEE-CUP NOT = "EMPTY"
>         PERFORM EMPTY-CUP.
> 
> EMPTY-CUP.
>    IF CUP-CONTENTS-APPEAR = "GOOD"
>        DRINK CUP-CONTENTS
>    ELSE
>         POUR CUP-CONTENTS.
> 
> FIND-SPOT.
>    MOVE "GOOD" TO LOCATION.
>    FIND SPOT.
>    IF COP-PRESENT = "YES" 
>        MOVE "BAD" TO LOCATION.
>    IF STREET-BUSY = "NO"
>        MOVE "BAD" TO LOCATION.   
>    IF BULLETS-FLYING = "YES"
>        MOVE "BAD" TO LOCATION.
> 
> SIT.
>    IF BUTT-ACHES
>        MOVE ASS TO OTHER-SIDE.
>    SIT STILL.
>    LOOK PITIFUL.
>    BEG.
>    PLEAD.
>    IF DARK="YES"
>         MOVE "Y" TO TIME-IND.
> 
> Please note:   This program was half the size, and worked twice as
> well until administration got ahold of it and requested rewrites.  Now
> it is bigger, and nobody knows for sure what it does......

Your continued complaints about administration are being duly noted and
recorded.  Please enunciate clearly and speak into the microphone.  There
is no need to panic (ref. CorpStan 01-666 "Panic - Requirements For").

Remember - the word "standard" is morally and intellectually equivalent to
"religious rite".

:-)

-- 
Bob Jarvis
Mail addresses hacked to foil automailers!
Send replies to jarvisb@timken.com




  parent reply	other threads:[~1996-12-31  0:00 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1996-12-30  0:00 'Money wanted' algorithm (Cobol version) Doug Miller
1996-12-30  0:00 ` Renegade
1996-12-30  0:00   ` 'Money wanted' algorithm (Lisp version) Ken Tilton
1996-12-30  0:00   ` 'Money wanted' algorithm (Cobol version) Bill Haverberg
1996-12-31  0:00   ` Bob Jarvis [this message]
1996-12-31  0:00     ` Deric Cheng
1996-12-30  0:00 ` Beldraen
1996-12-31  0:00   ` Constantinos A. Kotsokalis
1996-12-30  0:00 ` Sundial Services
1996-12-31  0:00 ` Robin Becker
1996-12-31  0:00 ` Brad Dale
     [not found]   ` <32C988BA.427D@dynasty.net>
1997-01-01  0:00     ` Pae Choi
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox