Best of Jokes Current Jokes RHF Home Search Sponsor RHF?
Fun Stuff & Jokes
Previous | RHF Joke Archives | Next

Fortran purity test

emv@ox.com (Edward Vielmetti)
(smirk, computer)

By: burley@geech.gnu.ai.mit.edu (Craig Burley)
Organization: Free Software Foundation 545 Tech Square Cambridge, MA 02139

In article <1992Jan03.201629.20247walt@netcom.COM> walt@netcom.COM (Walt Brainerd) writes:

	    Each member of X3J3 will complete the following form,
       the secretary will record the total points, and the member
       will be allowed that many votes on each issue.  I apologize
       to the secretary for the extra work involved, but fairness
       is surely more important.

       [...]

       To the secretary:  please put me down as having 77 votes.

   Of course, I tried to rig it so I would have the most points,
   but Jim Matheny of CSC had more.

Ok, conservatively, I have 1+14+22+0+(-11) = 26 points (sure hope I added and
subtracted right! :-).  The -11 might be a bit extreme, but I really can't
remember writing anything over 500 in Fortran that's "important" since 1980
or 81 or so.

Does this mean I'm not allowed to write a Fortran compiler?  :-)

I think another fun way to determine how many votes people on X3J3 get is
to come up with a test of ones' current perceptions of Fortran and it's
place in the industry.  It should be mostly multiple-choice/true-false but
perhaps some essay questions as well.

For example (with answers at the bottom of the post, but not upside-down):

--------

Question 1: The forthcoming Fortran standard [now F90] is important because:

    a) It will make it easier for people to write useful Fortran programs
    b) It will give compiler vendors more work to do and products to sell
    c) It will make it easier for people to teach others how to write Fortran
    d) It will serve as the ideal application lanuguage for Windows 3.0

Question 2: The Fortran 77 standard was important because:

    a) It was the first time anyone ever wrote down what Fortran was supposed
       to be used for
    b) Its deadpan writing style was the perfect antidote to the '70s disco
       craze
    c) Nobody thought it was possible
    d) It gave compiler vendors more work to do and products to sell
    e) It made it easier for people to write useful Fortran programs

Question 3: The arithmetic-IF (three-way) statement is in the Fortran
    language because:

    a) IF statements having higher prime numbers of branches (five, seven, and
       so on) were found hard to implement on binary computers
    b) It used to be the only way for people to write useful Fortran programs
    c) It more closely models human expectations than the logical-IF statement,
       since at most intersections, a driver has three choices as to which
       direction to take
    d) It makes writing applications for Windows 3.0 easier

Question 4: NAMELIST was added to the forthcoming Fortran standard because:

    a) There was no other way to make people use it
    b) There was no other way to stop people from using it
    c) It makes writing device drivers for UNIX easier
    d) People claimed it would make it easier for them to write useful Fortran
       programs
    e) Visual BASIC has it

Question 5: Recent and future Fortran standards disallow multiple-dummy
    and/or dummy/common aliasing of any variable when the called procedure
    modifies any variable involved in the aliasing because:

    a) It will give compiler vendors less work to do and faster products to
       sell
    b) There should really be only one way to skin a cat
    c) Fortran programming is for people who have nothing else to do but
       remember obscure rules like this
    d) It makes it easier for people to write useful Fortran programs
    d) I don't know what a dummy is

Question 6: Despite the fact that almost all Fortran implementations are on
    machines that use binary arithmetic, numerical constants in Fortran are
    expressed in decimal (base 10) notation because:

    a) It makes it easier for people to write useful Fortran programs
    b) There's only so much a computer should know
    c) Lots of Fortran programmers are used to COBOL PIC(999) stuff
    d) Keypunch machines are notoriously difficult when it comes to punching
       hexadecimal (base 16) numbers
    e) It will give anal-retentive mathematicians more explaining to do about
       how you never quite get what you want with floating-point, and that
       seems to keep them happy

Question 7: The name FORTRAN itself means:

    a) FORmula TRANslation
    b) FORTy RANdom features in one language
    c) FORget your computer-science TRAiNing
    d) FOR The Right ANswers
    e) Fortran Only Resembles Text Remotely At Night
    f) Nothing, it is one of those made-up marketing names like MUMPS

--------

I'm sure many of the rest of you could contribute more.  Then we'd have
something real with which to test people!  (On the other hand, my use of
grammar in the previous sentence, where I refused to end a sentence with a
preposition, should invalidate me for membership on most committees. :-)

--------
Here are my proposed "points" for the above questions, and the reasons why:
(Following the form-feed, of course.)

Question 1:
    a) 10 points -- You can't argue with this and be useful to X3J3
    b) 10 points -- You can't argue with this and be useful to X3J3
    c) 9 points -- Point off for thinking teaching is as important as selling
                   and using, since there's little money in teaching
    d) 0 points -- Try again when we start the standardization process
                   for Visual FORTRAN

Question 2:
    a) 2 points -- Nice fantasy
    b) 3 points -- True, but we fear your antidote to New Age music
    c) 4 points -- Doing the impossible gets boring after a while on X3J3
    d) 10 points -- Cynicism important for X3J3 reps
    e) 10 points -- Cynicism important for X3J3 reps

Question 3:
    a) 1 point -- For at least keeping up with comp.arch
    b) 10 points -- Your grasp of history is impeccable
    c) 5 points -- Always good to model human situations, but think: are such
                   intersections ideal, or perhaps modeled on Fortran?
    d) 0 points -- Not true, since mouse up/down/drag status is not available
                   as an integer value

Question 4:
    a) 0 points -- Oh come on!
    b) 1 point -- Right idea, wrong application
    c) 0 points -- This is never a reason for a Fortran feature, and wrong too
    d) 10 points -- Truly, there seems to be no other answer
    e) 5 points -- Excellent abstract thinking, points off for being mistaken

Question 5:
    a) 10 points -- A longer answer is possible, but a waste of time
    b) 9 points -- Not quite as eloquently expressed as a)
    c) 8 points -- Mostly true, but if we can get others to try it as well,
                   compiler vendors can sell more compilers
    d) 4 points -- Only if you replace "easier" and "useful" with "possible"
                   and "fast"
    e) 10 points -- You are likely to be excellent in X3J3 diplomacy

Question 6:
    a) 10 points -- Strangely, most people still think in base 0xA
    b) 4 points -- True in sentiment, false in implementation, decimal gives
                   the compiler more information than it needs, sometimes
    c) 2 points -- It doesn't help them any, actually; COBOL programmers don't
                   even understand what is meant by "Division" in Fortran
    d) 7 points -- Modern keypunch machines have their own hex entry pads
    e) 10 points -- The scary thing is, they're right

Question 7:
    a) 10 points
    b) 9 points -- One point off for minor historical inaccuracy
    c) 4 points -- Cynicism not that important to X3J3
    d) 5 points -- Wrong, but simple-minded answer suggests malleable X3J3
                   voter
    e) 1 point -- X3J3 hardly needs more recursive-acronym-loving FSF weenies
    f) 0 points -- Not even close

--------

NOTE: This sample test is protected by the GNU Public License.  You may
redistribute it only if you include with the distribution all the answers
and free copies of the Fortran 66, Fortran 77, and Fortran 90 standards,
plus MIL-STD 1753, for the recipients' background reading.

        tq vm, (burley)
--

James Craig Burley, Software Craftsperson    burley@gnu.ai.mit.edu

(From the "Rest" of RHF)


Previous | RHF Joke Archives | Next

Best of Jokes | Current Jokes | RHF Home | Search