Some mistakes I have and what I have learned from them

  • Cliff B Jones
Invited Papers
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1382)


The purpose of this paper is to make a number of points about the selection of topics, research style, and dissemination of ideas. The writing style chosen is to present past personal decisions which might be regarded as technical or strategic mistakes and to indicate what positive messages can be derived from the experiences.


Formal Method Partial Function Operational Semantic Virtual Reality Modelling Language Language Definition 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. [Acz82]
    P. Aczel. A note on program verification. manuscript, January 1982.Google Scholar
  2. [Ame89]
    Pierre America. Issues in the design of a parallel object-oriented language. Formal Aspects of Computing, 1(4), 1989.Google Scholar
  3. [AR89]
    Pierre America and Jan Rutten. A Parallel Object-Oriented Language: Design and Semantic Foundations. PhD thesis, Free University of Amsterdam, 1989.Google Scholar
  4. [BCJ84]
    H. Barringer, J.H. Cheng, and C. B. Jones. A logic covering undefinedness in program proofs. Acta Informatica, 21:251–269, 1984.CrossRefMathSciNetGoogle Scholar
  5. [BKP84]
    H. Barringer, R. Kuiper, and A. Pnueli. Now you can compose temporal logic specification. In Proceedings of 16th ACM STOC, Washington, May 1984.Google Scholar
  6. [Che86]
    J.H. Cheng. A Logic for Partial Functions. PhD thesis, University of Manchester, 1986.Google Scholar
  7. [CJ91]
    J. H. Cheng and C. B. Jones. On the usability of logics which handle partial functions. In C. Morgan and J. C. P. Woodcock, editors, 3rd Refinement Workshop, pages 51–69. Springer-Verlag, 1991.Google Scholar
  8. [CJ98]
    P. Collette and C. B. Jones. Enhancing the tractability of rely/guarantee specifications in the development of interfering operations. In G. D. Plotkin, editor, to be published. MIT Press, 1998.Google Scholar
  9. [Col94]
    Pierre Collette. Design of Compositional Proof Systems Based on Assumption-Commitment Specifications —Application to UNITY. PhD thesis, Louvain-la-Neuve, June 1994.Google Scholar
  10. [Dij76]
    E. W. Dijkstra. A Discipline of Programming. Prentice-Hall, 1976.Google Scholar
  11. [DS90]
    Edsger W Dijkstra and Carel S Scholten. Predicate Calculus and Program Semantics. Springer-Verlag, 1990. ISBN 0-387-96957-8, 3-540-96957-8.Google Scholar
  12. [GM92]
    J. Goguen and J. Meseguer. Order-sorted algebra I: Equational deduction for multiple inheritance, overloading, exceptions and partial operations. Theoretical Computer Science, 105:217–273, 1992.CrossRefMathSciNetGoogle Scholar
  13. [Gri81]
    D. Gries. The Science of Programming. Springer-Verlag, 1981.Google Scholar
  14. [Har67]
    G. H. Hardy. A Mathematician's Apology. Cambridge University Press, 1967.Google Scholar
  15. [HJ96]
    Steve J. Hodges and Cliff B. Jones. Non-interference properties of a concurrent object-based language: Proofs based on an operational semantics. In Burkhard Freitag, Cliff B. Jones, Christian Lengauer, and Hans-Jörg Schek, editors, Oject Orientation with Parallelism and Persistence, pages 1–22. Kluwer Academic Publishers, 1996.Google Scholar
  16. [Hoa69]
    C. A. R. Hoare. An axiomatic basis for computer programming. Communications of the ACM, 12(10):576–580, 583, October 1969.zbMATHCrossRefGoogle Scholar
  17. [IM91]
    T. Ito and A. R. Meyer, editors. TACS'91Proceedings of the International Conference on Theoretical Aspects of Computer Science, Sendai, Japan, volume 526 of Lecture Notes in Computer Science. Springer-Verlag, 1991.Google Scholar
  18. [JM94]
    C.B. Jones and C.A. Middelburg. A typed logic of partial functions reconstructed classically. Acta Informatica, 31(5):399–430, 1994.CrossRefMathSciNetGoogle Scholar
  19. [Jon72]
    C. B. Jones. Formal development of correct algorithms: an example based on Earley's recogniser. In SIGPLAN Notices, Volume 7 Number 1, pages 150–169. ACM, January 1972.Google Scholar
  20. [Jon73]
    C. B. Jones. Formal development of programs. Technical Report 12.117, IBM Laboratory Hursley, June 1973.Google Scholar
  21. [Jon80]
    C. B. Jones. Software Development: A Rigorous Approach. Prentice Hall International, 1980. ISBN 0-13-821884-6.Google Scholar
  22. [Jon81]
    C. B. Jones. Development Methods for Computer Programs including a Notion of Interference. PhD thesis, Oxford University, June 1981. Printed as: Programming Research Group, Technical Monograph 25.Google Scholar
  23. [Jon83]
    C. B. Jones. Specification and design of (parallel) programs. In Proceedings of IFIP'83, pages 321–332. North-Holland, 1983.Google Scholar
  24. [Jon86]
    C. B. Jones. Systematic Software Development Using VDM. Prentice Hall International, 1986.Google Scholar
  25. [Jon92]
    C. B. Jones. The search for tractable ways of reasoning about programs. Technical Report UMCS-92-4-4, Manchester University, 1992.Google Scholar
  26. [Jon95]
    C.B. Jones. Partial functions and logics: A warning. Information Processing Letters, 54(2):65–67, 1995.zbMATHCrossRefGoogle Scholar
  27. [Jon96]
    C. B. Jones. Some practical problems and their influence on semantics. In ESOP'96, volume 1058 of Lecture Notes in Computer Science, pages 1–17. Springer-Verlag, 1996.Google Scholar
  28. [Kle52]
    S. C. Kleene. Introduction to Metamathematics. Van Nostrad, 1952.Google Scholar
  29. [Kol76]
    G. Koletsos. Sequent calculus and partial logic. Master's thesis, Manchester University, 1976.Google Scholar
  30. [Luc69]
    P. Lucas. Note on strong meanings of logical operators. Technical Report LN 25.3.051, IBM Laboratory Vienna, 1969.Google Scholar
  31. [LW69]
    P. Lucas and K. Walk. On The Formal Description of PL/I, volume 6 of Annual Review in Automatic Programming Part 3. Pergamon Press, 1969.Google Scholar
  32. [McC63]
    J. McCarthy. Predicate calculus with’ undefined’ as a truth-value. Technical Report AI Memo 1, Stanford Artificial Intelligence Project, March 22nd 1963.Google Scholar
  33. [Mil92]
    R. Milner. The polyadic π-calculus: A tutorial. In M. Broy, editor, Logic and Algebra of Specification. Springer-Verlag, 1992.Google Scholar
  34. [MPW92]
    R. Milner, J. Parrow, and D. Walker. A calculus of mobile processes. Information and Computation, 100:1–77, 1992.CrossRefMathSciNetGoogle Scholar
  35. [StØ90]
    K. StØlen. Development of Parallel Programs on Shared Data-Structures. PhD thesis, Manchester University, 1990. available as UMCS-91-1-1.Google Scholar
  36. [Wal91]
    D. Walker. π-calculus semantics for object-oriented programming languages. In [IM91], pages 532–547, 1991.Google Scholar
  37. [Wal93]
    D. Walker. Process calculus and parallel object-oriented programming languages. In In T. Casavant (ed), Parallel Computers: Theory and Practice. Computer Society Press, to appear, 1993.Google Scholar
  38. [Wal94]
    D. Walker. Algebraic proofs of properties of objects, 1994. Proceedings of ESOP'94.Google Scholar
  39. [Xu92]
    Qiwen Xu. A Theory of State-based Parallel Programming. PhD thesis, Oxford University, 1992.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1998

Authors and Affiliations

  • Cliff B Jones
    • 1
    • 2
  1. 1.Harlequin plc Queens CourtAlderley Edge
  2. 2.Department of Computer ScienceManchester University

Personalised recommendations