Provision for Off-the-Record Action: (Escape and Hypertext)
1960 -- Bob Bemer, IBM
The Communications of ACM (1960 Feb) published Bemer's paper "A
proposal for character code compatibility". It was the genesis of
the Escape character (see the key on the upper left of your
keyboard) and escape sequences. It was meant first to identify
uniquely all the old codes that ASCII would replace, to avoid
hardships in the existing world of Babel, and make the adoption
of ASCII less painful or daunting.
It was a switching concept then --
"From here on we're going to talk in obsolete UNIVAC code".
"And here we switch back to ASCII".
Then we awoke to discover that escape sequences, being so general,
had use for other control actions, such as switching colors on
the screen, changing type sizes and fonts, and driving the most
general type of control actions. Thus they shouldn't be visible
or print, so the convention became to suppress display of the
command for those actions when the first escape character and its
sequence were encountered. From this to hiding the URL address
for hyperlink jumps was a trivial step.
Now for the "rest of the story", as Paul Harvey says.
The Hypertext Concept
1960 -- Ted Nelson, Harvard U.
In addition to coining the term "hypertext" for the elements of
his vision, Ted Nelson of Harvard University was, from 1960, the
ultimate publicist and enigmatic evangelist for new means of
computer-aided thinking, by which he did not necessarily mean the
Web as we know it now.
Nelson's project was called "Xanadu". Although several parts of
it did get to a working stage (programmed in Mooers' TRAC
language), it never got to total completion.
A major impetus to the world of personal computers was his book
"Computer Lib", written in 1974, before many PCs existed.
The McGraw-Hill book "Fire in the Valley" says that when Nelson
and Doug Engelbart were on stage together in 1998, "the audience
was viewing the prophets of two rival religions", for Nelson does
not admit (from his Japanese website) to this day that the
Worldwide Web is how he envisioned his still unfinished Xanadu
project to work.
The Point and Execute Concept
1964 -- Calvin Mooers, Rockford Research Inst.
His paper about TRAC [1] (ACM citation in [2]), had been presented as
"TRAC, A Procedure-Describing Language for the Reactive Typewriter",
at the ACM Programming Languages and Pragmatics Conference in
August of 1965. In it he said:
"These (active) functions permit forms to be moved to and from
the main memory ... They also permit one to build a "storage tree
..."
This describes precisely the storage tree of the Web and
Internet, where the hyperlinks form a storage tree, and where
movements to one file or another of the remembered "tree" are
triggered by the "forward" and "back" icon. Of course the "main
memory" has been much enlarged by the network design.
His abstract said:
"In TRAC ... one can write procedures ... for treating any
[character] string at any time as an executable procedure ..."
On the Web, the hidden "fetch and display this" string that
brings you a story from the Manchester Guardian in the UK is such
an executable procedure.
See also the TRAC homepage.
No patents were sought by Mooers. He abhorred their insufficient
protection, and vowed to use copyrights instead, which he did via
his own company, the Rockford Research Institute. Besides, he
acknowledged that his work was done under contract to ARPA
(contract SD-295), Air Force Office of Scientific Research
AF-AFOSR 476, 477, and 462-75, and U.S. Public Health Service
Grant GM 10416 - all agencies of the Federal Government, thus
paid for by the people of the United States! So it is all in the
public domain.
First Live Working Model of Hypertext and Links in Action
1968 -- Douglas C. Engelbart, Stanford Research Inst.
Engelbart is most famous as the inventor of the handheld "mouse".
His presentation of his total work, at the Fall Joint Computer
Conference in San Francisco in December of 1968, was so spectacular
that Google finds over 1290 references to it. Andries Van Dam dubbed
it "The Mother of All Demos", and [3] is that story from his Brown
University viewpoint:
An authoritative and dispassionate summary of Engelbart's total
technical life is given in the appropriately-named
http://sloan.stanford.edu/MouseSite [4], describing the FJCC presentation as:
"... a 90-minute public multimedia demonstration of a networked
computer system. This was the world debut of the computer mouse,
2-dimensional dispaly editing, hypermedia -- including in-file
object addressing and linking, multiple windows with flexible
view control, and on-screen video teleconferencing."
That phrase "in-file object addressing and linking" may be the
best-ever description of what "point and click" results in.
But the tendency of some popularized websites is to ignore the
facts in favor of what sounds catchy. An example is CNET's series
"Unsung Heroes of Computing", in a page called "Douglas Engelbart,
Patron saint of point and click" [5]. Ignoring the facts that he is
hardly "unsung", and that only the mouse aspect is described there,
saying nothing about the mechanism clicked on, is it really true?
An earlier paper (1966 May 12) by Engelbart, "Study for the
Development of Human Intellect Augmentation Techniques" [6], is
the project summary for:
Contract NAS1-5904,
National Aeronautics and Space Administration,
Langley Research Center,
Langley, Virginia 23365
This document indicates that the project, at original first movie time
in 1965, and a year later, although using the mouse, does not obtain
the material at a URL in the same manner we do today. Specifically,
1c1b2 A set of "structure jumping" commands were added, enabling a user
to select a given statement on the screen and jump directly to any one
of the following structurally related statements: ...
1d1c1 The complete "overlay" generability afforded by some modern
batch-processing systems is not expected to be appropriate for
our needs. We want to have relatively close control of where an
overlay is put and when it is loaded or flushed. ...
1d1d2 This has long been on our needs list and is very important
to flexible experimentation. Good examples exist in the Culler-Fried
system, in the OPS-3 system of Greenburger, et al. (on the MIT
MAC system); in the TRAC systems of Mooers and Deutsch, and in
recent developments by Ellis and Sibley (RAND Corporation) and
Bert Sutherland (Lincoln Laboratories).
So Engelbart was quite aware of, and eventually used, Mooers'
"active function" as the actuating device when pointed to by the
mouse. (The dictionary of Project MAC, at MIT, also allocates
"active function" credit to Mooers).
As an aside relative to the British Telecom fiasco, among five
entities noted in this 1966 May report as having been given copies
of all movies and slides was the United Kingdom Scientific Mission,
represented by F. M. Blanke. So British Telecom could hardly
claim ignorance of this prior work.
The movie part of the 1968 demonstration should have given
British Telecom pause in their recent and foolish attempt to
swallow the WorldWide Web. That's right! A movie showing
everything in action just as British Telecom claimed they
described in their British patent 8 years later! And in their
U.S. patent 21 years later!
Engelbart sought no patents for most of this work, as it was done
under U.S. Govt. sponsorship. He did patent the mouse itself, as
a low-cost mechanical product.
Markup Language
1969 -- Charles Goldfarb, IBM
"Markup Language", a major component of "hypertext", invented in
1969 by Charles Goldfarb of IBM, was shown to the world as GML in
1970, but never patented (the U.S. Congress had not yet gotten so
silly as to permit patenting languages). It was renamed SGML by
1975.
When an Internet file is displayed, one is likely to see its
(hyperlink) address (from whence it was obtained) at the top of
the screen. Often the final letters are ".htm" or ".html",
meaning that it is in HyperText Markup
Language form, which is a major component of
"hypertext"!.
Thus "HyperText Markup Language", the first word due to Ted
Nelson, the second two words due to Goldfarb.
HTML is a curious but effective combination of modified escape
sequences and other derivatives that continue the non-display
mechanism, but uses (within its particular domain) other
usually-printing (and thus keyable) characters as the escape
trigger and terminator. Primarily "<" and ">".
It is impossible to give a suitable reference for HTML. Pick
one yourself -- from among over 426,000,000 hits that Google gave
on April Fool's Day of 2003.
Conclusion
So there you have it -- why I refer to Engelbart as the "point
man", and Mooers as the "click man". The "point" facility that
Engelbart gave Mooers was just what he needed for the "click"
facility. Mooers had described the function, but a more effective
execution of the function awaited the mouse hardware.
As for the escape facility that ties this all together, I suppose
that someone will now refer to me as the "invisible man"!
REFERENCES
- Calvin N. Mooers, "TRAC, A Procedure-Describing Language for the
Reactive Typewriter"
(full text)
- Calvin N. Mooers, "TRAC, A Procedure-Describing Language for the
Reactive Typewriter"
(Citation)
CACM 9, No. 3, 1966 Mar, 215-219
-
Brown U.
-
Mouse Site
-
CNET "Unsung Heroes of Computing"
- D. C. Engelbart, "Study for the Development of Human Intellect
Augmentation Techniques", Quarterly Technical Letter Report 1,
(full text)
covering the period 8 February through 7 May 1966,
Stanford Research Institute Project 5890