Publications by Prof Simon Thompson
Publication period (5/1986 onwards) - ordered by publication type and date
Books
Journal Papers
-
Programming
errors in traversal programs over structured data.
Ralf Laemmel, Simon Thompson, and Markus Kaiser.
Science of Computer Programming, to appear, July 2013.
Available at http://arxiv.org/abs/1201.6057.
-
Podcasting
by synchronising PowerPoint and voice: What are the pedagogical
benefits?.
Darren K. Griffin, David Mitchell, and Simon Thompson.
Computers and Education, 53(2):532-539, September 2009.
-
The
expressiveness of spider diagrams augmented with constants.
Gem Stapleton, John Taylor, Simon Thompson, and John Howse.
Journal of Visual Languages and Computing, 20:30-49, April 2009.
-
Modelling
Reactive Multimedia: Design and Authoring.
Simon Thompson, Peter King, and Helen Cameron.
Multimedia Tools and Applications, 27(1):23 - 52, September 2005.
-
The
Expressiveness of Spider Diagrams.
Gem Stapleton, John Howse, John Taylor, and Simon Thompson.
Journal of Logic and Computation, 14(6):857-880, November 2004.
-
A decision
procedure and complete axiomatization of finite interval temporal logic with
projection.
H. Bowman and S.J. Thompson.
Journal of Logic and Computation, 13(2):195-239, April 2003.
-
Mexitl:
Multimedia in executable interval temporal logic.
H. Bowman, H. Cameron, P. King, and S.J. Thompson.
Formal Methods in System Design, 22:5-38, January 2003.
-
Modelling
Reactive Multimedia: Events and Behaviours.
Helen Cameron, Peter King, and Simon Thompson.
Multimedia Tools and Applications, 19(1):53-77, January 2003.
-
From
ACT-ONE to Miranda, a Translation Experiment.
Nathan Charles, Howard Bowman, and Simon Thompson.
Computer Standards and Interfaces, 19(1), May 1997.
-
A Logic for
Miranda, Revisited.
Simon Thompson.
Formal Aspects of Computing, (7), March 1995.
-
On the
Equivalence Between CMC and TIM.
Raphael Lins, Simon Thompson, and Simon Peyton Jones.
Journal of Functional Programming, 1(4), November 1994.
-
The
Categorical Multi-combinator Machine: CMCM.
Simon Thompson and Rafael D Lins.
The Computer Journal, 35(2), July 1992.
-
A Logic for
Miranda.
Simon Thompson.
Formal Aspects of Computing, (1), July 1989.
Book Chapters
-
Cooperative and Work-Integrated Education in Information Technology.
Tony Clear, Gwyn Caxton, Simon Thompson, and Sally Fincher.
In Richard Coll and Karsten Zegwaard, editors, Integrated Handbook for
Cooperative and Work-Integrated Education, pages 141-150. World
Associate of Cooperative Education, Inc., second edition, November 2011.
-
Proof.
Simon Thompson.
In Kevin Hammond and Greg Michaelson, editors, Research Directions in
Parallel Functional Programming, pages 93-119. Springer Verlag,
November 1999.
Conference Papers
-
Extracting
QuickCheck Specifications from EUnit Test Cases.
Thomas Arts, Pablo Lamela Seijas, and Simon Thompson.
In Kenji Rikitake and Erik Stenman, editors, Erlang Workshop 2011.
ACM Press, September 2011.
-
Extracting
Properties from Test Cases by Refactoring.
Huiqing Li, Simon Thompson, and Thomas Arts.
In Steve Counsell, editor, Proceedings of the Refactoring and Testing
Workshop (RefTest 2011), page 2. IEEE digital library, March 2011.
-
Incremental Code Clone Detection and Elimination for Erlang Programs.
Huiqing Li and Simon Thompson.
In Dimitra Giannakopoulou and Fernando Orejas, editors, Proceedings of
the Conference on Fundamental Approaches to Software Engineering
(FASE'11), Lecture Notes in Computer Science. Springer, March 2011.
-
Erlang
behaviours: Programming with process design patterns.
Francesco Cesarini and Simon Thompson.
In Zoltán Horváth, Rinus Plasmeijer, and Vikória Zóka, editors, Central
European Functional Programming School, CEFP 2009, volume 6299 of
Lecture Notes in Computer Science, pages 19-41. Springer, November 2010.
-
From Test
Cases to FSMs: Augmented Test-driven Development and Property Inference.
Thomas Arts and Simon Thompson.
In Scott Lystig Fritchie and Konstantinos Sagonas, editors, Erlang’10:
Proceedings of the 2010 ACM SIGPLAN Erlang Workshop, pages 2-12. ACM
SIGPLAN, September 2010.
-
QuickChecking Refactoring Tools.
Daniel Drienyovszky, Daniel Horpacsi, and Simon Thompson.
In Scott Lystig Fritchie and Konstantinos Sagonas, editors, Erlang’10:
Proceedings of the 2010 ACM SIGPLAN Erlang Workshop, pages 75-80. ACM
SIGPLAN, September 2010.
-
Improved
Testing Through Refactoring: Experience from the ProTest project.
Huiqing Li and Simon Thompson.
In Leonardo Bottaci and Gordon Fraser, editors, Testing - Practice and
Research Techniques: 5th International Academic and Industrial Conference,
TAIC PART 2010, volume 6303 of Lecture Notes in Computer
Science, pages 198-202. Springer, September 2010.
-
Refactoring Support for Modularity Maintenance in Erlang.
Huiqing Li and SImon Thompson.
In Jurgen Vunju and Cristina Marinescu, editors, Tenth IEEE International
Working Conference on Source Code Analysis and Manipulation, pages
157-166. IEEE Computer Society, September 2010.
-
Fragments
of Spider Diagrams of Order and their Relative Expressiveness.
Aidan Delaney, Gem Stapleton, John Taylor, and Simon Thompson.
In Ashok K. Goel, Mateja Jamnik, and N. Hari Narayanan, editors,
Diagrammatic Representation and Inference 6th International Conference,
Diagrams 2010, volume 6170 of Lecture Notes in Computer
Science, pages 69-83. Springer, August 2010.
-
An
Expression Processor: A Case Study in Refactoring Haskell Programs.
Christopher Brown, Huiqing Li, and Simon Thompson.
In Rex Page, editor, Eleventh Symposium on Trends in Functional
Programming, page 15pp, May 2010.
-
Clone
Detection and Elimination for Haskell.
Christopher Brown and Simon Thompson.
In John Gallagher and Janis Voigtlander, editors, PEPM'10: Proceedings of
the 2010 ACM SIGPLAN Workshop on Partial Evaluation and Program
Manipulation, pages 111-120. ACM Press, January 2010.
-
Similar
Code Detection and Elimination for Erlang Programs.
Huiqing Li and Simon Thompson.
In Manuel Carro and Ricardo Pena, editors, Practical Aspects of
Declarative languages 2010, number 5937 in Lecture Notes in Computer
Science, pages 104-118. Springer, January 2010.
-
Testing-framework-aware Refactoring.
Huiqing Li and Simon Thompson.
In The Third ACM Workshop on Refactoring Tools, pages 1-4, Orlando,
Florida, October 2009.
-
Clone
Detection and Removal for Erlang/OTP within a Refactoring
Environment.
Huiqing Li and Simon Thompson.
In Massimiliano Di Penta and Jens Knodel, editors, Third International
Workshop on Detection of Software Clones, page 1pp, Kaiserslautern,
Germany, March 2009.
-
Clone
Detection and Removal for Erlang/OTP within a Refactoring
Environment.
Huiqing Li and Simon Thompson.
In ACM SIGPLAN Workshop on Partial Evaluation and Program Manipulation
(PEPM'09), Savannah, Georgia, USA, January 2009.
-
Tool
Support for Refactoring Functional Programs.
Huiqing Li and Simon Thompson.
In Danny Dig, Robert Fuhrer, and Ralph Johnson, editors, Proceedings of
the Second ACM SIGPLAN Workshop on Refactoring Tools, page 4pp,
Nashville, Tennessee, USA, October 2008.
-
Spider
Diagrams of Order and a Hierarchy of Star-Free Regular Languages.
Aidan Delaney, John Taylor, and Simon Thompson.
In Gem Stapleton, John Howse, and John Lee, editors, Diagrammatic
Representation and Inference: 5th International Conference, Diagrams 2008,
Herrsching, Germany, September 19-21, 2008, number 5223 in Lecture
Notes in Computer Science, pages 172-187, September 2008.
-
Refactoring with Wrangler, updated: Data and process refactorings, and integration with
Eclipse.
Huiqing Li, Simon Thompson, George Orosz, and Melinda Toth.
In Zoltan Horvath and Tee Teoh, editors, Proceedings of the Seventh ACM
SIGPLAN Erlang Workshop, page 12pp. ACM Press, September 2008.
-
Refactoring with Wrangler, updated.
Huiqing Li, Simon Thompson, Gy"orgy Orosz, and Melinda T"oth.
In ACM SIGPLAN Erlang Workshop 2008, Victoria, British Columbia,
Canada, September 2008.
-
Clone
Detection and Removal for Erlang/OTP within a Refactoring
Environment.
Huiqing Li and Simon Thompson.
In P. Achten, P. Koopman, and M. T. Morazán, editors, Draft Proceedings of
the Ninth Symposium on Trends in Functional Programming(TFP), The
Netherlands, May 2008.
-
A
Certified Refactoring Engine.
Nik Sultana and Simon Thompson.
In P. Achten, P. Koopman, and M. T. Morazán, editors, Draft Proceedings of
the Ninth Symposium on Trends in Functional Programming (TFP), May 2008.
-
Programming
errors in traversal programs over structured data.
Ralf Laemmel, Simon Thompson, and Markus Kaiser.
In Jurgen Vinju and Adrian Johnstone, editors, 8th Workshop on Language
Description, Tools and Applications, volume 238 of ENTCS,
pages 135-153. Springer, April 2008.
-
Tool
Support for Refactoring Functional Programs.
Huiqing Li and Simon Thompson.
In Partial Evaluation and Program Manipulation, San Francisco,
California, USA, January 2008.
-
Mechanical Verification of Refactorings.
Nik Sultana and Simon Thompson.
In Workshop on Partial Evaluation and Program Manipulation. ACM
SIGPLAN, January 2008.
-
Refactorings that Split and Merge Programs.
Christopher Brown and Simon Thompson.
In Draft Proceedings of the 19th International Symposium on
Implementation and Application of Functional Languages, IFL
2007, Freiburg, Germany., September 2007.
-
Testing
Erlang Refactorings with QuickCheck.
{Huiqing Li and Simon Thompson.
In Draft Proceedings of the 19th International Symposium on
Implementation and Application of Functional Languages, IFL 2007,
Freiburg, Germany, September 2007.
-
Testing
Erlang Refactorings with QuickCheck.
Huiqing Li and Simon Thompson.
In the 19th International Symposium on Implementation and Application of
Functional Languages, IFL 2007, LNCS, Freiburg, Germany, September 2007.
-
Declarative extensions of XML languages.
Simon Thompson, Peter R. King, and Patrick Schmitz.
In Peter R. King and Steven Simske, editors, Proceedings of the 2007 ACM
symposium on Document engineering, pages 89-91. ACM, ACM Press, August
2007.
-
Refactoring
erlang programs.
Huiqing Li, Simon Thompson, László Lövei, Zoltán Horváth, Tamás Kozsik, Anikó
Víg, and Tamás Nagy.
In The Proceedings of 12th International Erlang/OTP User Conference,
Stockholm, Sweden, November 2006.
-
A
comparative study of refactoring haskell and erlang programs.
Huiqing Li and Simon Thompson.
In Massimiliano Di Penta and Leon Moonen, editors, Sixth IEEE
International Workshop on Source Code Analysis and Manipulation (SCAM
2006), pages 197-206. IEEE, September 2006.
-
Formalisation of Haskell Refactorings.
Huiqing Li and Simon Thompson.
In Marko van Eekelen and Kevin Hammond, editors, Trends in Functional
Programming, September 2005.
-
Tableaux
for Diagrammatic Reasoning.
Octavian Patrascoiu, Simon Thompson, and Peter Rodgers.
In Philip Cox and Trevor Smedley, editors, Proceedings of the 2005
International Workshop on Visual Languages and Computing, pages 279-286,
September 2005.
Published as a part of the Proceedings of the Eleventh International Conference
on Distributed Multimedia Systems.
-
Software
Metrics: Measuring Haskell.
Chris Ryder and Simon Thompson.
In Marko van Eekelen and Kevin Hammond, editors, Trends in Functional
Programming, September 2005.
-
A New
Language for the Visualization of Logic and reasoning.
Gem Stapleton, Simon Thompson, Andrew Fish, John Howse, and John Taylor.
In Philip Cox and Trevor Smedley, editors, Proceedings of the 2005
International Workshop on Visual Languages and Computing, pages 287-292,
September 2005.
Published as a part of the Proceedings of the Eleventh International Conference
on Distributed Multimedia Systems.
-
Refactoring Functional Programs.
Simon Thompson.
In Varmo Vene and Tarmo Uustalu, editors, Advanced Functional Programming,
5th International School, AFP 2004, volume 3622 of Lecture Notes
in Computer Science, pages 331-357. Springer Verlag, September 2005.
-
The
Haskell Refactorer: HaRe, and its API.
Huiqing Li, Simon Thompson, and Claus Reinke.
In John Boyland and Görel Hedin, editors, Proceedings of the 5th workshop
on Language Descriptions, Tools and Applications (LDTA 2005), April
2005.
Published as Volume 141, Number 4 of Electronic Notes in Theoretical Computer
Science, http://www.sciencedirect.com/science/journal/15710661.
-
The
Expressiveness of Spider Diagrams Augmented with Constants.
Gem Stapleton, John Howse, John Taylor, and Simon Thompson.
In Visual Languages / Human Centered Computing 2004, September 2004.
-
What Can
Spider Diagrams Say?.
Gem Stapleton, John Howse, John Taylor, and Simon Thompson.
In Alan Blackwell, Kim Marriott, and Atsushi Shimojima, editors,
Diagrammatic Representation and Inference, volume 2980 of Lecture
Notes in Computer Science. Springer, March 2004.
-
Behavioural Reactivity and Real Time Programming in XML: Functional Programming meets
SMIL animation.
Peter King, Patrick Schmitz, and Simon Thompson.
In Jean-Yves Vion-Dury, editor, ACM Symposium on Document Engineering
2004, pages 57-66. ACM, January 2004.
-
Tool
support for refactoring functional programs.
Huiqing Li, Claus Reinke, and Simon Thompson.
In Johan Jeuring, editor, ACM SIGPLAN 2003 Haskell Workshop, pages
27-38. Association for Computing Machinery, August 2003.
-
Presentation Dynamism in XML.
Partick Schmitz, Simon Thompson, and Peter King.
In WWW 2003, Budapest, Hungary, May 2003. W3C.
Poster presentation.
-
A case
study in refactoring functional programs.
Simon Thompson and Claus Reinke.
In Roberto Ierusalimschy, Lucilia Figueiredo, and Marcio Tulio Valente,
editors, VII Brazilian Symposium on Programming Languages, pages
1-16. Sociedade Brasileira de Computacao, May 2003.
-
Functional
and Declarative Programming in Education 2002.
Michael Hanus, Shriram Krishnamurthy, and Simon Thompson, editors, volume 0210.
Christian-Albrechts-Universitat, Kiel, October 2002.
-
Logic and
Dependent Types in the Aldor Computer Algebra System.
Simon Thompson.
In Manfred Kerber and Michael Kohlhase, editors, Symbolic Computation and
Automated Reasoning, pages 205-219. A K Peters, January 2001.
-
Integrating Computer Algebra and Reasoning through the Type System of Aldor.
Erik Poll and Simon Thompson.
In Helene Kirchner and Christophe Ringeissen, editors, Frontiers of
Combining Systems: Frocos 2000, volume 1794 of Lecture Notes in
Computer Science, pages 136-150. Springer, March 2000.
-
A tableaux
method for interval temporal logic with projection.
Howard Bowman and Simon J. Thompson.
In TABLEAUX'98, International Conference on Analytic Tableaux and Related
Methods, volume 1397 of Lecture Notes in AI, pages 108-123.
Springer-Verlag, May 1998.
-
Synchronization in Multimedia Documents.
Helen Cameron, Peter King, Howard Bowman, and Simon Thompson.
In Jacques Andre, editor, Electronic Publishing 98. Springer, May
1998.
-
em Where do
I begin? A problem solving approach to teaching functional
programming.
Simon Thompson.
In Krzysztof Apt, Pieter Hartel, and Paul Klint, editors, First
International Conference on Declarative Programming Languages in
Education. Springer-Verlag, September 1997.
-
Introductory Problem Solving in Computer Science.
David J. Barnes, Sally Fincher, and Simon Thompson.
In Goretti Daughton and Patricia Magee, editors, 5th Annual
Conference on the Teaching of Computing, pages 36-39, Centre for
Teaching Computing, Dublin City University, Dublin 9, Ireland, August 1997.
-
Specification and Prototyping of Structured Multimedia Documents using Interval Temporal
Logic.
Howard Bowman, Helen Cameron, Peter King, and Simon Thompson.
In International Conference on Temporal Logic, Applied Logic Series.
Kluwer, July 1997.
-
Constructive
interval temporal logic in Alf.
Simon Thompson.
In International Conference on Temporal Logic 1997, Applied Logic.
Kluwer, January 1997.
These proceedings are to be publised by Kluwer in 1997.
-
Functional
programming through the curriculum.
Simon Thompson and Steve Hill.
In Pieter H. Hartel and Rinus Plasmeijer, editors, Functional Programming
Languages in Education, number 1022 in Lecture Notes in Computer
Science, pages 85-102. Springer-Verlag, December 1995.
-
Miranda in
Isabelle.
Steve Hill and Simon Thompson.
In Lawrence C. Paulson, editor, Preceedings of the first Isabelle Users
Workshop, number 397 in University Of Cambridge Computer Laboratory
Technical Reports Series, pages 122-135, September 1995.
-
Are subsets
necessary in Martin-Lof type theory?.
Simon Thompson.
In J. P. Myers Jr. and M. J. O'Donnell, editors, Constructivity in
Computer Science, volume 613 of Lecture Notes in Computer
Science, pages 46-57. Springer-Verlag, January 1992.
Miscellaneous
-
Erlang by
example.
Francesco Cesarini and Simon Thompson.
Video, October 2011.
More details at http://shop.oreilly.com/product/0636920020240.do.
-
A
Domain-Specific Language for Scripting Refactorings in
Erlang.
Huiqing Li and Simon Thompson.
Technical Report 5-11, October 2011.
-
A
User-extensible Refactoring Tool for Erlang Programs.
Huiqing Li and Simon Thompson.
Technical Report 4-11, University of Kent, October 2011.
-
Improving
your test code with Wrangler.
Huiqing Li, Adam Lindberg, Andreas Schumacher, and Simon Thompson.
Technical Report 4-09, School of Computing, University of Kent, November 2009.
-
Declarative
extensions of xml languages.
Simon Thompson and Peter King.
Technical Report 3-07, University of Kent, Computing Laboratory, May 2007.
-
Euler
diagram-based notations.
John Howse, Richard Bosworth, Andrew Fish, Gem Stapleton, John Taylor, Peter
Rodgers, and Simon Thompson.
Technical report, University of Brighton, School of Computing, Mathematical and
Information Sciences, January 2006.
-
Porting
HaRe to the GHC API.
Chris Ryder and Simon Thompson.
Technical Report 8-05, University of Kent, Computing Laboratory, University of
Kent, Canterbury, Kent, UK, October 2005.
-
Transformation in HaRe.
Chau Nguyen-Viet.
Technical report, University of Kent, Computing Laboratory, University of Kent,
Canterbury, Kent, UK, December 2004.
-
Progress
on HaRe: the Haskell Refactorer.
Huiqing Li, Claus Reinke, and Simon Thompson.
Poster presentation at the International Conference on Functional Programming,
Snowbird, Utah. ACM, September 2004.
-
Refactoring Functional Programs.
Simon Thompson and Claus Reinke.
Technical Report 16-01, University of Kent, Computing Laboratory, October 2001.
-
FAD: A
Functional Analysis and Design Methodology.
Dan Russell.
Phd thesis, Computing Laboratory, University of Kent at Canterbury, January
2001.
-
A Complete
Axiomatization of Interval Temporal Logic with Projection.
Howard Bowman and Simon Thompson.
Technical Report 6-00, Computing Laboratory, University of Kent, January 2000.
-
Regular
Expressions and Automata using Haskell.
Simon Thompson.
Technical Report 5-00, Computing Laboratory, University of Kent, January 2000.
-
Aldor meets
Haskell.
Chris Ryder and Simon Thompson.
Technical Report 15-99, Computing Laboratory, University of Kent, October 1999.
-
Proceedings
of the 1999 Workshop on Functional and Declarative Programming in
Education.
Matthias Felleisen, Michael Hanus, and Simon Thompson.
Technical Report COMP TR99-346, Department of Computer Science, Rice
University, August 1999.
-
The Type
System of Aldor.
Erik Poll and Simon Thompson.
Technical Report 11-99, Computing Laboratory, University of Kent at Canterbury,
Kent CT2 7NF, UK, July 1999.
-
Adding the
axioms to Axiom: Towards a system of automated reasoning in Aldor.
Erik Poll and Simon Thompson.
Technical Report 6-98, Computing Laboratory, University of Kent, May 1998.
Presented at the workshop Calculemus and Types, Eindhoven, Netherlands, July
1998. <a href="http://www.win.tue.nl/math/dw/pp/calc/">Workshop
website</a>.
-
A
Functional Reactive Animation of a Lift using Fran.
Simon Thompson.
Technical Report 5-98, Computing Laboratory, University of Kent, May 1998.
-
A
Tableau Method for Interval Temporal Logic.
Howard Bowman and Simon Thompson.
Technical Report 12-97, Computing Laboratory, University of Kent, November
1997.
-
Mexitl:
Multimedia in Executable Interval Temporal Logic.
Howard Bowman, Helen Cameron, Peter King, and Simon Thompson.
Technical Report 3-97, Computing Laboratory, University of Kent at Canterbury,
May 1997.
-
Higher-order
+ Polymorphic = Reusable.
Simon Thompson.
May 1997.
-
Abstract
interpretation of constructive type theory.
Alastair Telford and Simon Thompson.
Technical Report 19-96*, University of Kent, Computing Laboratory, University
of Kent, Canterbury, UK, October 1996.
-
Programming
Language Semantics using Miranda.
Simon Thompson.
Technical Report 9-95*, University of Kent, Computing Laboratory, University of
Kent, Canterbury, UK, May 1995.
-
Regular
Expressions and Automata using Miranda.
Simon Thompson.
May 1995.
-
Formulating
Haskell.
Simon Thompson.
Technical Report 29-92*, University of Kent, Computing Laboratory, University
of Kent, Canterbury, UK, November 1992.
-
Implementing SASL using Categorical Multi-combinators.
Rafael D Lins and Simon Thompson.
Technical Report 47*, University of Kent, Computing Laboratory, University of
Kent, Canterbury, UK, February 1990.
-
Interactive
functional programs: a method and a formal semantics.
Simon Thompson.
Technical Report 48*, University of Kent, Computing Laboratory, University of
Kent, Canterbury, UK, November 1987.
-
Proving
properties of functions defined on lawful types.
Simon Thompson.
Technical Report 37*, University of Kent, Computing Laboratory, University of
Kent, Canterbury, UK, May 1986.