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)