John Hughes

Orcid: 0000-0001-8042-0969

Affiliations:
  • Chalmers University of Technology, Gothenburg, Sweden
  • Quviq AB, Gothenburg, Sweden
  • University of Glasgow, Computing Science Department, UK (former)


According to our database1, John Hughes authored at least 87 papers between 1985 and 2024.

Collaborative distances:

Timeline

Legend:

Book 
In proceedings 
Article 
PhD thesis 
Dataset
Other 

Links

Online presence:

On csauthors.net:

Bibliography

2024
Exploring API behaviours through generated examples.
Softw. Qual. J., June, 2024

2021
Do Judge a Test by its Cover - Combining Combinatorial and Property-Based Testing.
Proceedings of the Programming Languages and Systems, 2021

2019
How to Specify It! - A Guide to Writing Properties of Pure Functions.
Proceedings of the Trends in Functional Programming - 20th International Symposium, 2019

2018
Special section on functional paradigm for high performance computing.
Future Gener. Comput. Syst., 2018

Special issue on Parallel and distributed computing based on the functional programming paradigm.
Concurr. Comput. Pract. Exp., 2018

Branching processes for QuickCheck generators.
Proceedings of the 11th ACM SIGPLAN International Symposium on Haskell, 2018

Typing the wild in Erlang.
Proceedings of the 17th ACM SIGPLAN International Workshop on Erlang, 2018

Understanding formal specifications through good examples.
Proceedings of the 17th ACM SIGPLAN International Workshop on Erlang, 2018

2017
Modelling of Autosar Libraries for Large Scale Testing.
Proceedings of the Proceedings 2nd Workshop on Models for Formal Analysis of Real Systems, 2017

Beginner's luck: a language for property-based generators.
Proceedings of the 44th ACM SIGPLAN Symposium on Principles of Programming Languages, 2017

2016
Testing noninterference, quickly.
J. Funct. Program., 2016

Automatic Grading of Programming Exercises using Property-Based Testing.
Proceedings of the 2016 ACM Conference on Innovation and Technology in Computer Science Education, 2016

Mysteries of DropBox: Property-Based Testing of a Distributed Synchronization Service.
Proceedings of the 2016 IEEE International Conference on Software Testing, 2016

How Well are Your Requirements Tested?
Proceedings of the 2016 IEEE International Conference on Software Testing, 2016

Find more bugs with QuickCheck!
Proceedings of the 11th International Workshop on Automation of Software Test, 2016

Experiences with QuickCheck: Testing the Hard Stuff and Staying Sane.
Proceedings of the A List of Successes That Can Change the World, 2016

2015
Testing AUTOSAR software with QuickCheck.
Proceedings of the Eighth IEEE International Conference on Software Testing, 2015

Graphical editing support for QuickCheck models.
Proceedings of the Eighth IEEE International Conference on Software Testing, 2015

Making Random Judgments: Automatically Generating Well-Typed Terms from the Definition of a Type-System.
Proceedings of the Programming Languages and Systems, 2015

Linking unit tests and properties.
Proceedings of the 14th ACM SIGPLAN Workshop on Erlang 2015, 2015

2014
Toward a mature industrial practice of software test automation.
Softw. Qual. J., 2014

An Expressive Semantics of Mocking.
Proceedings of the Fundamental Approaches to Software Engineering, 2014

2013
Testing noninterference, quickly.
Proceedings of the ACM SIGPLAN International Conference on Functional Programming, 2013

2011
Testing an optimising compiler by generating random lambda terms.
Proceedings of the 6th International Workshop on Automation of Software Test, 2011

Testing a database for race conditions with QuickCheck.
Proceedings of the 10th ACM SIGPLAN workshop on Erlang, Tokyo, Japan, September 23, 2011, 2011

Accelerating race condition detection through procrastination.
Proceedings of the 10th ACM SIGPLAN workshop on Erlang, Tokyo, Japan, September 23, 2011, 2011

2010
QuickSpec: Guessing Formal Specifications Using Testing.
Proceedings of the Tests and Proofs - 4th International Conference, 2010

Using temporal relations to specify and test an instant messaging server.
Proceedings of the 5th Workshop on Automation of Software Test, 2010

Ranking programs using black box testing.
Proceedings of the 5th Workshop on Automation of Software Test, 2010

2009
Finding race conditions in Erlang with QuickCheck and PULSE.
Proceedings of the Proceeding of the 14th ACM SIGPLAN international conference on Functional programming, 2009

Property-Based Testing - The ProTest Project.
Proceedings of the Formal Methods for Components and Objects - 8th International Symposium, 2009

Software Testing with QuickCheck.
Proceedings of the Central European Functional Programming School - Third Summer School, 2009

2008
Experiences from teaching functional programming at Chalmers.
ACM SIGPLAN Notices, 2008

A library for light-weight information-flow security in haskell.
Proceedings of the 1st ACM SIGPLAN Symposium on Haskell, 2008

Testing Erlang data types with quviq quickcheck.
Proceedings of the 7th ACM SIGPLAN workshop on ERLANG, 2008

2007
QuickCheck Testing for Fun and Profit.
Proceedings of the Practical Aspects of Declarative Languages, 9th International Symposium, 2007

A history of Haskell: being lazy with class.
Proceedings of the Third ACM SIGPLAN History of Programming Languages Conference (HOPL-III), 2007

A Library for Secure Multi-threaded Information Flow in Haskell.
Proceedings of the 20th IEEE Computer Security Foundations Symposium, 2007

2006
Fast and loose reasoning is morally correct.
Proceedings of the 33rd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, 2006

Testing telecoms software with quviq QuickCheck.
Proceedings of the 2006 ACM SIGPLAN Workshop on Erlang, 2006

Closing Internal Timing Channels by Transformation.
Proceedings of the Advances in Computer Science, 2006

2005
Verifying haskell programs using constructive type theory.
Proceedings of the ACM SIGPLAN Workshop on Haskell, 2005

2004
Global variables in Haskell.
J. Funct. Program., 2004

04381 Abstracts Collection - Dependently Typed Programming.
Proceedings of the Dependently Typed Programming, 12.09. - 17.09.2004, 2004

Programming with Arrows.
Proceedings of the Advanced Functional Programming, 2004

2003
Polish parsers, step by step.
Proceedings of the Eighth ACM SIGPLAN International Conference on Functional Programming, 2003

2002
Testing monadic code with QuickCheck.
ACM SIGPLAN Notices, 2002

Testing and Tracing Lazy Functional Programs Using QuickCheck and Hat.
Proceedings of the Advanced Functional Programming, 2002

2001
Tag Elimination and Jones-Optimality.
Proceedings of the Programs as Data Objects, Second Symposium, 2001

Binding-Time Analysis for Polymorphic Types.
Proceedings of the Perspectives of System Informatics, 2001

2000
Extending a partial evaluator which supports separate compilation.
Theor. Comput. Sci., 2000

Generalising monads to arrows.
Sci. Comput. Program., 2000

QuickCheck: a lightweight tool for random testing of Haskell programs.
Proceedings of the Fifth ACM SIGPLAN International Conference on Functional Programming (ICFP '00), 2000

The Correctness of Type Specialisation.
Proceedings of the Programming Languages and Systems, 2000

Monads and Effects.
Proceedings of the Applied Semantics, International Summer School, 2000

1999
Recursion and Dynamic Data-structures in Bounded Space: Towards Embedded ML Programming.
Proceedings of the fourth ACM SIGPLAN International Conference on Functional Programming (ICFP '99), 1999

1998
A Type Specialisation Tutorial.
Proceedings of the Partial Evaluation - Practice and Theory, DIKU 1998 International Summer School, Copenhagen, Denmark, June 29, 1998

Generalising Monads (Abstract).
Proceedings of the Mathematics of Program Construction, 1998

1997
Module-Sensitive Program Specialisation.
Proceedings of the ACM SIGPLAN '97 Conference on Programming Language Design and Implementation (PLDI), 1997

Partial Evaluation and Separate Compilation.
Proceedings of the ACM SIGPLAN Symposium on Partial Evaluation and Semantics-Based Program Manipulation (PEPM '97), 1997

1996
Proving the Correctness of Reactive Systems Using Sized Types.
Proceedings of the Conference Record of POPL'96: The 23rd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, 1996

1995
Making Choices Lazily.
Proceedings of the seventh international conference on Functional programming languages and computer architecture, 1995

The Design of a Pretty-printing Library.
Proceedings of the Advanced Functional Programming, 1995

1994
Reversing Abstract Interpretations.
Sci. Comput. Program., 1994

1993
How to Give a Good Research Talk.
ACM SIGPLAN Notices, 1993

Fast Abstract Interpretation Using Sequential Algorithms.
Proceedings of the Static Analysis, Third International Workshop, 1993

1992
Report on the Programming Language Haskell, A Non-strict, Purely Functional Language.
ACM SIGPLAN Notices, 1992

Projections for Polymorphic First-Order Strictness Analysis.
Math. Struct. Comput. Sci., 1992

Relational Reversal of Abstract Interpretation.
J. Log. Comput., 1992

Pretty-printing: An Exercise in Functional Programming.
Proceedings of the Mathematics of Program Construction, Second International Conference, Oxford, UK, June 29, 1992

Avoiding Unnecessary Updates.
Proceedings of the Functional Programming, 1992

A Semantics for Locally Bottom-Avoiding Choice.
Proceedings of the Functional Programming, 1992

A Loop-Detecting Interpreter for Lazy, Higher-Order Programs.
Proceedings of the Functional Programming, 1992

Abstract Interpretation of Higher Order Functions Using Concrete Data Structures (Summary).
Proceedings of the Functional Programming, 1992

1991
Implementing Projection-based Strictness Analysis.
Proceedings of the Functional Programming, 1991

A Loop-Detecting Interpreter for Lazy Programs.
Proceedings of the Functional Programming, 1991

1990
Towards Relating Forwards and Backwards Analyses.
Proceedings of the 1990 Glasgow Workshop on Functional Programming, 1990

Towards Binding-Time Improvement for Free.
Proceedings of the 1990 Glasgow Workshop on Functional Programming, 1990

1989
Why Functional Programming Matters.
Comput. J., 1989

Expressing and Reasoning About Non-Deterministic Functional Programs.
Proceedings of the Functional Programming, 1989

An Iterative Powerdomain Construction.
Proceedings of the Functional Programming, 1989

Abstract Interpretation of Polymorphic Functions.
Proceedings of the Functional Programming, 1989

Projections for Polymorphic Strictness Analysis.
Proceedings of the Category Theory and Computer Science, 1989

1987
Implementing Functional Databases.
Proceedings of the Advances in Database Programming Languages, 1987

1986
A Novel Representation of Lists and its Application to the Function "reverse".
Inf. Process. Lett., 1986

1985
A Distributed Garbage Collection Algorithm.
Proceedings of the Functional Programming Languages and Computer Architecture, 1985

Lazy Memo-functions.
Proceedings of the Functional Programming Languages and Computer Architecture, 1985


  Loading...