Geraint Jones
Publications
These are those of my computing-related publications
that happen still to be available on-line.
This document is divided very roughly into:
- Papers about Ruby,
which is a relational programming language
for synchronous hardware design.
- Papers about occam,
which is a parallel programming language connected
with the design of the INMOS transputer family;
there are also some documents relating to the
`Programming in occam'
books.
- Other odd papers,
which are in the main vaguely connected with functional programming.
All of these publications are copyright, and in some cases the copyright
is not held by me.
It is a publisher's requirement to display the following notice:
The documents distributed by this server have been provided by the
contributing authors as a means to ensure timely dissemination of
scholarly and technical work on a noncommercial basis.
Copyright and all rights therein are maintained by the authors or
by other copyright holders, notwithstanding that they have offered
their works here electronically.
It is understood that all persons copying this information will
adhere to the terms and constraints invoked by each author's copyright.
These works may not be reposted without the explicit permission of
the copyright holder.
Ruby
is a relational programming language suited
for the design of synchronous hardware.
A good introduction would be the
Lyngby summer-school lecture notes.
-
A certain loss of identity
- Geraint Jones and Mary Sheeran,
presented at the Glasgow Functional Programming Group
Workshop, Ayr, Scotland, 6 - 8 July 1992.
published in Functional Programming, Glasgow 1992,
eds. John Launchbury and Patrick Sansom,
Springer Verlag, Workshops in Computing, 1992.
(revised 18th November 1992)
-
Designing arithmetic circuits by refinement in Ruby
- Geraint Jones and Mary Sheeran,
presented at Mathematics of Program Construction,
Oxford, England, 29 June - 3 July 1992.
published in Mathematics of Program Construction,
eds. R. S. Bird,
C. C. Morgan and
J. C. P. Woodcock,
Springer Verlag, LNCS 669, 1993.
(revised 15th November 1992)
A later version of this paper, differing essentially only
in the addition of entertaining typographical and
semantic errors, appears in the journal
Science of Computer Programming.
- Collecting butterflies
- Geraint Jones and Mary Sheeran,
February 1991 (ISBN 0-902928-69-4)
This is the text of
a PRG monograph
PRG-91
containing three papers about butterfly circuits.
- The study of butterflies (GJ+MS)
- A fast flutter by the Fourier transform (GJ)
- Sorts of butterflies (MS)
They are revised from work presented at the IVth Banff
Workshop on Higher Order (sic), Banff, Canada, 1990.
-
Deriving bit-serial circuits in Ruby
- Geraint Jones and Mary Sheeran,
presented at VLSI 91, Edinburgh, Scotland, 20-22 August 1991.
published in IFIP Transactions A-1, VLSI 91,
eds. Arne Halaas and Peter B. Denyer, North-Holland, 1992.
(revised 21 May 1991)
-
Getting your wires crossed
- Geraint Jones,
presented at the Glasgow Functional Programming Group Workshop,
Portree, Skye, Scotland, 12-14 August 1991.
published in Functional Programming, Glasgow 1991,
eds. Rogardt Heldal, Carsten Kehler Holst, Philip Wadler,
Springer Verlag, Workshops in Computing, 1991.
(dated 14th December 1991)
- Circuit design in Ruby
- Geraint Jones and Mary Sheeran,
Lecture notes on Ruby from a summer school in
Lyngby, Denmark, September 1990.
published in Formal Methods for VLSI Design,
ed. J. Staunstrup, North Holland, 1990.
(revised June 1990)
-
Designing circuits by calculation
- Geraint Jones,
lecture notes from a short course given to the MSc in Computation
at Oxford, Hilary term 1990.
(revised 9 April 1990)
-
Relations and refinement in circuit design
- Geraint Jones and Mary Sheeran,
presented at 3rd BACS FACS workshop on refinement,
Hursley, England, January 1990.
published in 3rd Refinement Workshop, 1990,
eds. Carroll Morgan
and Jim Woodcock,
Springer Workshops in Computing, 1991.
(revised 24th July 1990)
The Ruby stuff is derived from some earlier work on
muFP.
-
Measuring the busyness of a transputer
- Geraint Jones,
from occam user group newsletter no.12, January 1990.
(11 December 1990)
-
Efficient multiple buffering in occam
- Geraint Jones,
from occam user group newsletter no.11, July 1989.
(31 May 1989)
-
Carefully scheduled selection with ALT
- Geraint Jones,
from occam user group newsletter no.10, January 1989.
- On guards
- Geraint Jones,
presented at the 7th technical meeting of the OUG, Grenoble, 1987.
published in
Parallel Programming of Transputer Based Machines,
ed. Traian Muntean, IOS, September 1987.
(1 September 1987)
-
The meaning and implementation of PRI ALT in occam,
- Geoff Barrett, Michael Goldsmith, Geraint Jones, Andrew Kay
presented at the 9th technical meeting of the OUG, Southampton, 1988.
published in
occam and the Transputer,
research and applications (OUG-9),
ed. Charlie Askew, IOS, September 1988.
(28 July 1988)
Prentice-Hall published a book called
Programming in occam,
and a similar one called
Programming in occam 2
(co-authored by Michael Goldsmith).
These are now out of print, but versions are available online.
The following (short) documents list known errors
in the published versions of these books.
-
Errata in Programming in occam 2
- lists the known errors (some of which are corrected in the second printing)
in the Prentice Hall edition of
Programming in occam 2,
Geraint Jones and Michael Goldsmith,
ISBN 0-13-730334-3,
dated 1988.
(revised 9th February 1990)
-
Errata in Programming in occam
- lists the known errors in the Prentice Hall edition of
Programming in occam,
Geraint Jones, ISBN 0-13-729773-4, dated 1987.
(last revised 12 November 1989)
We are still (vaguely) interested in any new errors you might find,
and would welcome comments by electronic mail to us at
occam-book@comlab.oxford.ac.uk.
A note about notation
-
On Representing Polynomials by Matrices
- Geraint Jones
and
Irina Voiculescu.
unpublished note, July 2000.
Strange papers about functional programming
-
Tabulation for Type Hackers
- Geraint Jones.
unpublished note, July 1998.
-
More haste, less speed:
lazy versus eager evaluation
- Richard Bird,
Geraint Jones and
Oege de Moor.
published in Journal of Functional Programming, 7(5),
September 1997 (pp. 541-547)
Papers about deriving functional programs
-
Program optimisation, naturally
- Richard Bird,
Jeremy Gibbons
and
Geraint Jones.
Presented at the Symposium in celebration of the work of Tony Hoare, Oxford, September 1999.
-
The Under-Appreciated Unfold
- Jeremy Gibbons
and
Geraint Jones.
(Presented at the Third ACM SIGPLAN International Conference on Functional Programming, Baltimore, Maryland, September 1998)
-
Linear-time breadth-first tree algorithms
An exercise in the arithmetic of folds and zips
- Geraint Jones and
Jeremy Gibbons.
(unpublished note dated 10th December 1992)
-
Deriving the fast Fourier algorithm by calculation
- Geraint Jones,
presented at the Glasgow Functional Programming Group Workshop,
Fraserburgh, Scotland, 21-23 August 1989.
published in Functional programming, Glasgow 1989,
eds. Kei Davis and
John Hughes,
Springer Workshops in Computing, 1990.
(revised 28th February 1990)
The text of the Orwell script in the appendix of this paper
is available as a text file
(dated 3rd September 1989).
Half-baked notes about deriving programs
-
The closure of a finite mapping
- Geraint Jones.
unpublished note, December 1988.
MuFP was a functional precursor of Ruby,
another language for designing synchronous hardware.
-
Timeless Truths about Sequential Circuits
- Geraint Jones and Mary Sheeran,
published in Concurrent Computations:
Algorithms, Architectures and Technology,
eds. S. K. Tewksbury,
B. W. Dickinson,
S. C. Schwartz,
Plenum Press, New York 1988.
(revised August 1989)
-
Computer-based tools for regular array design
- Wayne Luk, Geraint Jones and Mary Sheeran,
published in Systolic Array Processors,
eds. J. McCanny, J. McWhirter and E. Swartzlander.
Prentice-Hall International, 1989, pp. 589-598.
A historical curiosity, bits of LispKit software
LispKit was a simple implementation of a functional programming language,
based on that in the book
Functional Programming -- Application and Implemenation
by Peter Henderson
(Prentice Hall International, ISBN 0-13-331579-7, 1980)
and described in The LispKit Manual,
Peter Henderson,
Geraint Jones and Simon Jones, PRG Technical Monograph PRG-32, 1983.
The texts of the programs
needed to implement this system are still available.
An article for a less technical audience
-
Sharp as a Razor: A Queen's Award for the Computing Laboratory
- Geraint Jones,
from the Oxford Magazine, No59. (Fourth Week, Trinity Term, 1990)
|
|