Paul McJones
Last modified 27 June 2024.
Technical interests
In 2019, the book Elements of Programming, by Alexander Stepanov and Paul McJones, was republished by the authors in paperback and free PDF -- see the web site.
Jonathan Shekter, Bob Archer, and I designed and implemented the first version of the Adobe Pixel Bender parallel image-processing language supported in Adobe Flash Player starting with version 10 and in Adobe After Effects starting with CS3.
I designed the portable operating-system interfaces for the SRC implementation of Modula-3 and chaired the "Interface Police" committee that cleaned up and documented
the basic libraries. See:
- James J. Horning, Bill Kalsow, Paul McJones, and Greg Nelson.
Some Useful Modula-3 Interfaces.
Research Report 113, Digital Equipment Corporation Systems Research Center.
Palo Alto, CA, December 1993.
PDF /
Online at hpl.hp.com via archive.org
I participated in the development of a Vesta-based programming
environment for Modula-2+.
See:
- Roy Levin and Paul R. McJones.
The Vesta Approach to Precise Configuration of Large Software Systems.
Research Report 105, Digital Equipment Corporation Systems Research Center
Palo Alto, CA, June 1993.
PDF /
Online at hpl.hp.com via archive.org
I worked with John Backus on the early design of his family of functional programming
languages. See:
- Paul McJones.
A Church-Rosser Property of Closed Applicative Languages.
Research Report RJ 1589, IBM Research Laboratory, San Jose (May 1975).
PDF (scanned, 661315
bytes)
I built an APL virtual machine in microcode for a Digital Scientific Meta4 (which had a 90 nanosecond instruction time in 1970). See:
- Paul McJones.
CRMS APL Processor.
Center for Research in Management Science, University of California, Berkeley
(February 1973).
Charles Simonyi and I built a hand-tuned Snobol4 implementation for the
Control Data 6400 at the University of California, Berkeley. This report and its appendices serve, respectively, as the tutorial and reference manual for our dialect of Snobol4:
Source code and documentation are available here.
I've worked on several projects with the Software Preservation Group of the Computer History Museum to
collect, preserve, and present historic software, including source code:
I periodically post about these projects to the Dusty Decks blog. See also:
- Paul McJones and David Redell. History of the CAL Timesharing System. IEEE Annals of the History of Computing, Volume 45, Issue 3, July-Sep 2023, pages 80-91. IEEE Xplore (open access)
- Paul McJones. The Advent of Digital Typography: Interview With Liz Bond Crews. IEEE Annals of the History of Computing, Volume 42, Issue 1 (January-March 2020), pages 41-50.
IEEE Xplore (open access)
- Paul McJones. The LISP 2 Project. IEEE Annals of the History of Computing, Volume 39, Issue 4 (October-December 2017), pages 85-92. IEEE Xplore (open access)
- Paul McJones. In Search of the Original Fortran Compiler. IEEE Annals of the History of Computing, Volume 39, Issue 2 (April-June 2017), pages 81-88. IEEE Xplore (open access)
Previously I scanned the documents in CHM's
Stretch (IBM 7030)
Collection -- an online collection of some 1022 documents from the IBM 7030
development project donated to the Museum by Harwood Kolsky.
As an associate editor of the
ACM SIGMOD Anthology, I
collected papers and republishing permissions for System R, and the
collected works of E.F. Codd and Jim Gray.
I recorded, transcribed, and edited the proceedings of the
1995 SQL Reunion, which
reunited the teams that designed IBM's System R and
DB2 databases.
I designed the user process management component of the Taos operating
system for the Firefly multiprocessor workstation. This included binary-compatible
emulation of Berkeley Unix, and also a separate but interoperable interface
for multi-threaded processes. See:
I designed the virtual memory manager, "Germ" (boot loader/teledebug kernel),
and some standard device interfaces ("hardware abstraction layer") for the
Xerox Pilot operating system (embedded in the Xerox Star and some other products).
See:
The Computer History Museum has a transcript and a video of "The Final Demonstration of the Xerox ‘Star’ Computer". Al Kossow
collects Xerox workstations and
documentation. Alan Freier created a web site
about the Dandelion
and other Xerox D* workstations running Pilot; he originally hosted this
web site on a Dandelion.
I designed the file directory system for the CAL Time-Sharing System, which
ran on the Control Data 6000 series. See:
- B. Lampson and H. Sturgis.
Reflections on an Operating System Design.
Communications of the ACM, Volume 19, Number 5, May 1976, pp. 251-265.
ACM Digital Library (open access)
- Paul McJones and Dave Redell. History of the CAL Timesharing System. IEEE Annals of the History of Computing, Volume 45, Issue 3, July-Sep 2023, pages 80-91. IEEE Xplore (open access)
An archive of design and user documentation plus source code is available here.
I designed the crash recovery component of the System R database system. See:
-
-
M. M. Astrahan,
M. W. Blasgen,
D. D. Chamberlin,
K. P. Eswaran,
J. N. Gray,
P. P. Griffiths,
W. F. King,
R. A. Lorie,
P. R. McJones,
J. W. Mehl,
G. R. Putzolu,
I. L. Traiger,
B. W. Wade,
V. Watson.
- Paul McJones (editor).
The 1995 SQL Reunion: People, Project, and Politics.
August 20, 1997 (2nd edition).
Online at mcjones.org/System_R/
I led a team that built the world's first speech-enabled electronic program guide for
digital cable television at Agile TV (now Promptu) .
I worked on customer relationship management software at Epiphany, Inc. (now part of Infor Global Solutions).
I consulted on the MilliCent microcommerce project
at the Systems Research Center of Digital Equipment Corporation (then Compaq, now HP).
I worked on EachMovie, a web site that recommended movies and videos using the Each to Each
collaborative filtering algorithm:
HP decided to stop sharing the data with researchers, but while it was available it was cited by a number of papers.
In 1994, Andrew
Birrell and I built a system called Virtual Paper that provided first-class support for online reading. The Virtual
Paper software (now only of historical interest) is available in source form as part of the Critical Mass Modula-3 library. As a spin-off of Virtual Paper,
we made available the pstotext utility, which extracts the words from a PostScript or PDF document and which is included as the text extraction features in GSview.
Internet address:
paul at mcjones dot org