[R] Reminiscing on 20 years using S

Greg Snow Greg.Snow at imail.org
Wed Dec 26 21:05:55 CET 2007


I realized earlier this year (2007) that it was in 1987 that I first
started using an early version of S (it was ported to VMS and was called
success).  That means that I have been using some variant of S (to
various degrees) for over 20 years now (I don't feel that old).  

Since things are a bit slow this time of year I thought I would take a
few minutes and reminisce on some of the changes I have observed since I
first encountered that early version.  Some of the newer users may enjoy
seeing how much things have improved and maybe some of the other more
experienced users would like to chime in with their observations.

We would access that old version using dumb terminals (the computer that
actually did the work was down the hall in a locked air-conditioned room
(and it took up a good chunk of the room)).  We did graphics using
essentially ASCII art.  There was not a default graphics driver in those
days and we would specify the "printer()" driver, then do the graphics
commands, then use the "show()" command to actually print out the graph
(with '*' for points and - for the x axis, | for the y axis and + for
tick marks), we thought it was pretty impressive at the time that the
computer would do that for us.  Later I learned that our terminals could
understand both vt100 and tek4010 protocols so we would do all the
typing and textual output in vt100 mode, then switch to tek for the
graphs, having actual lines made the graphs look a lot better, but it
was a lot slower, you could see each point added to the graph.  And if
you forgot to switch back to text mode, then you next output would be
plotted (1 character at a time) over the top of the graph.

In order to get color graphs or other high quality graphs we had to send
the plots to the old hp pen plotter which had a mechanical arm that
would pick up the pens and move them around the paper (fun to watch, but
slow, very slow on curves).  That is where the origin of using color
numbers came from, color 1 matched with whichever pen was in slot #1,
color 2 with slot 2, ... And the computer did not know which color was
which (we tried to keep black in position 1, but someone could always
change that).  If you wanted to use colors 5-8 then it would stop and
beep, then you would change the pens to the other set of colors.  A line
width of 2 meant drawing the line 2 times, etc.  And there were no
filled rectangles, only density and angle of hash lines in them (if the
density was high enough it would look like a fill, but it would use up
the pens to fast and make you unpopular).

The current 600+ colors in R are a luxury now.

I remember before I learned about attaching to the search list (I don't
know if it was because attaching was not mature yet, or I just had not
learned it) we would name our objects using a pattern like: proj1.x,
proj1.y, proj2.x, proj2.y, ... where proj1 and proj2 were identifiers
for the projects (what I would name a data frame now) then there was a
prefix function that you could set proj1 as a prefix and just type x and
it would use proj1.x.  Attaching was a huge jump forward, and the 'with'
command is pure luxury in comparison (I just need to remember to
appreciate little things like that more).

It is amazing how much the S language (S-plus and R) have
changed/improved in the last 20 years.  Thanks to all the great people
who have contributed and thanks for letting me wax nostalgic for a bit.

-- 
Gregory (Greg) L. Snow Ph.D.
Statistical Data Center
Intermountain Healthcare
greg.snow at imail.org
(801) 408-8111
 



More information about the R-help mailing list