Andrew D. Gordon

Orcid: 0000-0002-5809-2484

Affiliations:
  • Microsoft Research


According to our database1, Andrew D. Gordon authored at least 140 papers between 1992 and 2024.

Collaborative distances:

Awards

ACM Fellow

ACM Fellow 2020, "For contributions to programming languages: their principles, logic, usability, and trustworthiness".

Timeline

Legend:

Book 
In proceedings 
Article 
PhD thesis 
Dataset
Other 

Links

Online presence:

On csauthors.net:

Bibliography

2024
Requirements are All You Need: The Final Frontier for End-User Software Engineering.
CoRR, 2024

"My toxic trait is thinking I'll remember this": gaps in the learner experience of video tutorials for feature-rich software.
CoRR, 2024

Solving Data-centric Tasks using Large Language Models.
Proceedings of the Findings of the Association for Computational Linguistics: NAACL 2024, 2024

2023
Participatory prompting: a user-centric research method for eliciting AI assistance opportunities in knowledge workflows.
CoRR, 2023

Co-audit: tools to help humans double-check AI-generated content.
CoRR, 2023

COLDECO: An End User Spreadsheet Inspection Tool for AI-Generated Code.
Proceedings of the IEEE Symposium on Visual Languages and Human-Centric Computing, 2023

FxD: a functional debugger for dysfunctional spreadsheets.
Proceedings of the IEEE Symposium on Visual Languages and Human-Centric Computing, 2023

"What It Wants Me To Say": Bridging the Abstraction Gap Between End-User Programmers and Code-Generating Large Language Models.
Proceedings of the 2023 CHI Conference on Human Factors in Computing Systems, 2023

2022
LinkingPark: An automatic semantic table interpretation system.
J. Web Semant., 2022

Where-provenance for bidirectional editing in spreadsheets.
J. Comput. Lang., 2022

Conditional Independence by Typing.
ACM Trans. Program. Lang. Syst., 2022

Rows from Many Sources: Enriching row completions from Wikidata with a pre-trained Language Model.
Proceedings of the Companion of The Web Conference 2022, Virtual Event / Lyon, France, April 25, 2022

End-user encounters with lambda abstraction in spreadsheets: Apollo's bow or Achilles' heel?
Proceedings of the 2022 IEEE Symposium on Visual Languages and Human-Centric Computing, 2022

What is it like to program with artificial intelligence?
Proceedings of the 33rd Annual Workshop of the Psychology of Programming Interest Group, 2022

GridBook: Natural Language Formulas for the Spreadsheet Grid.
Proceedings of the IUI 2022: 27th International Conference on Intelligent User Interfaces, Helsinki, Finland, March 22, 2022

2021
Spreadsheet Comprehension: Guesswork, Giving Up and Going Back to the Author.
Proceedings of the CHI '21: CHI Conference on Human Factors in Computing Systems, 2021

2020
Elastic sheet-defined functions: Generalising spreadsheet functions to variable-size input arrays.
J. Funct. Program., 2020

OptTyper: Probabilistic Type Inference by Optimising Logical and Natural Constraints.
CoRR, 2020

Understanding and Inferring Units in Spreadsheets.
Proceedings of the IEEE Symposium on Visual Languages and Human-Centric Computing, 2020

LinkingPark: An Integrated Approach for Semantic Table Interpretation.
Proceedings of the Semantic Web Challenge on Tabular Data to Knowledge Graph Matching (SemTab 2020) co-located with the 19th International Semantic Web Conference (ISWC 2020), 2020

Higher-Order Spreadsheets with Spilled Arrays.
Proceedings of the Programming Languages and Systems, 2020

Spreadsheet Use and Programming Experience: An Exploratory Survey.
Proceedings of the Extended Abstracts of the 2020 CHI Conference on Human Factors in Computing Systems, 2020

Gridlets: Reusing Spreadsheet Grids.
Proceedings of the Extended Abstracts of the 2020 CHI Conference on Human Factors in Computing Systems, 2020

2019
Probabilistic programming with densities in SlicStan: efficient, flexible, and deterministic.
Proc. ACM Program. Lang., 2019

Somewhere Around That Number: An Interview Study of How Spreadsheet Users Manage Uncertainty.
CoRR, 2019

End-User Probabilistic Programming.
Proceedings of the Quantitative Evaluation of Systems, 16th International Conference, 2019

Usability of Probabilistic Programming Languages.
Proceedings of the 30th Annual Workshop of the Psychology of Programming Interest Group, 2019

2018
Calculation View: multiple-representation editing in spreadsheets.
Proceedings of the 2018 IEEE Symposium on Visual Languages and Human-Centric Computing, 2018

How do people learn to use spreadsheets? (Work in progress).
Proceedings of the 29th Annual Workshop of the Psychology of Programming Interest Group, 2018

2017
Deriving Probability Density Functions from Probabilistic Functional Programs.
Log. Methods Comput. Sci., 2017

2016
More Semantics More Robust: Improving Android Malware Classifiers.
Proceedings of the 9th ACM Conference on Security & Privacy in Wireless and Mobile Networks, 2016

Fabular: regression formulas as probabilistic programming.
Proceedings of the 43rd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, 2016

On Robust Malware Classifiers by Verifying Unwanted Behaviours.
Proceedings of the Integrated Formal Methods - 12th International Conference, 2016

A lambda-calculus foundation for universal probabilistic programming.
Proceedings of the 21st ACM SIGPLAN International Conference on Functional Programming, 2016

A text-mining approach to explain unwanted behaviours.
Proceedings of the 9th European Workshop on System Security, 2016

Explaining Unwanted Behaviours in Context.
Proceedings of the 1st International Workshop on Innovations in Mobile Privacy and Security, 2016

Differentially Private Bayesian Programming.
Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security, 2016

2015
Challenges and Trends in Probabilistic Programming (Dagstuhl Seminar 15181).
Dagstuhl Reports, 2015

The Wreath Process: A totally generative model of geometric shape based on nested symmetries.
CoRR, 2015

Bimodal Modelling of Source Code and Natural Language.
Proceedings of the 32nd International Conference on Machine Learning, 2015

Practical probabilistic programming with monads.
Proceedings of the 8th ACM SIGPLAN Symposium on Haskell, 2015

Probabilistic Programs as Spreadsheet Queries.
Proceedings of the Programming Languages and Systems, 2015

2014
Guiding a general-purpose C verifier to prove cryptographic protocols.
J. Comput. Secur., 2014

Tabular: a schema-driven probabilistic programming language.
Proceedings of the 41st Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, 2014

Probabilistic programming.
Proceedings of the on Future of Software Engineering, 2014

2013
Measure Transformer Semantics for Bayesian Machine Learning.
Log. Methods Comput. Sci., 2013

Bayesian inference using data flow analysis.
Proceedings of the Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on the Foundations of Software Engineering, 2013

Constraint-Based Autonomic Reconfiguration.
Proceedings of the 7th IEEE International Conference on Self-Adaptive and Self-Organizing Systems, 2013

A model-learner pattern for bayesian reasoning.
Proceedings of the 40th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, 2013

2012
Semantic subtyping with an SMT solver.
J. Funct. Program., 2012

A Declarative Approach to Automated Configuration.
Proceedings of the Strategies, 2012

Computational verification of C protocol implementations by symbolic execution.
Proceedings of the ACM Conference on Computer and Communications Security, 2012

2011
Refinement types for secure implementations.
ACM Trans. Program. Lang. Syst., 2011

Roles, stacks, histories: A triple for Hoare.
J. Funct. Program., 2011

Robin Milner 1934--2010: verification, languages, and concurrency.
Proceedings of the 38th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, 2011

Verifying Cryptographic Code in C: Some Experience and the Csec Challenge.
Proceedings of the Formal Aspects of Security and Trust - 8th International Workshop, 2011

Cryptographic Verification by Typing for a Sample Protocol Implementation.
Proceedings of the Foundations of Security Analysis and Design VI, 2011

Maintaining Database Integrity with Refinement Types.
Proceedings of the ECOOP 2011 - Object-Oriented Programming, 2011

Extracting and verifying cryptographic models from C protocol code by symbolic execution.
Proceedings of the 18th ACM Conference on Computer and Communications Security, 2011

2010
Principles and Applications of Refinement Types.
Proceedings of the Logics and Languages for Reliability and Security, 2010

SecPAL: Design and semantics of a decentralized authorization language.
J. Comput. Secur., 2010

Modular verification of security protocol code by typing.
Proceedings of the 37th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, 2010

Roles, Stacks, Histories: A Triple for Hoare.
Proceedings of the Reflections on the Work of C. A. R. Hoare., 2010

2009
Secure compilation of a multi-tier web language.
Proceedings of TLDI'09: 2009 ACM SIGPLAN International Workshop on Types in Languages Design and Implementation, 2009

Towards a Verified Reference Implementation of a Trusted Platform Module.
Proceedings of the Security Protocols XVII, 2009

A compositional theory for STM Haskell.
Proceedings of the 2nd ACM SIGPLAN Symposium on Haskell, 2009

2008
Verified interoperable implementations of security protocols.
ACM Trans. Program. Lang. Syst., 2008

Verifying policy-based web services security.
ACM Trans. Program. Lang. Syst., 2008

Type Inference for Correspondence Types.
Proceedings of the 6th Workshop on Security Issues in Concurrency, 2008

Code-Carrying Authorization.
Proceedings of the Computer Security, 2008

Verified implementations of the information card federated identity-management protocol.
Proceedings of the 2008 ACM Symposium on Information, Computer and Communications Security, 2008

2007
A type discipline for authorization policies.
ACM Trans. Program. Lang. Syst., 2007

Secure sessions for Web services.
ACM Trans. Inf. Syst. Secur., 2007

Guest Editors' Foreword.
J. Log. Algebraic Methods Program., 2007

A Chart Semantics for the Pi-Calculus.
Proceedings of the 14th International Workshop on Expressiveness in Concurrency, 2007

Service Combinators for Farming Virtual Machines.
Proceedings of the Trustworthy Global Computing, Third Symposium, 2007

A Type Discipline for Authorization in Distributed Systems.
Proceedings of the 20th IEEE Computer Security Foundations Symposium, 2007

Design and Semantics of a Decentralized Authorization Language.
Proceedings of the 20th IEEE Computer Security Foundations Symposium, 2007

2006
Verified Reference Implementations of WS-Security Protocols.
Proceedings of the Web Services and Formal Methods, Third International Workshop, 2006

Provable Implementations of Security Protocols.
Proceedings of the 21th IEEE Symposium on Logic in Computer Science (LICS 2006), 2006

2005
Preface for the Special Issue: Foundations of Software Science and Computation Structures.
Theor. Comput. Sci., 2005

A semantics for web services authentication.
Theor. Comput. Sci., 2005

Deciding validity in a spatial logic for trees.
J. Funct. Program., 2005

Secrecy and group creation.
Inf. Comput., 2005

Validating a web service security abstraction by typing.
Formal Aspects Comput., 2005

V for Virtual.
Proceedings of the Workshop "Essays on Algebraic Process Calculi", 2005

Preface.
Proceedings of the Workshop "Essays on Algebraic Process Calculi", 2005

An advisor for web services security policies.
Proceedings of the 2nd ACM Workshop On Secure Web Services, 2005

From Typed Process Calculi to Source-Based Security.
Proceedings of the Static Analysis, 12th International Symposium, 2005

Secrecy Despite Compromise: Types, Cryptography, and the Pi-Calculus.
Proceedings of the CONCUR 2005 - Concurrency Theory, 16th International Conference, 2005

2004
Types and effects for asymmetric cryptographic protocols.
J. Comput. Secur., 2004

From Stack Inspection to Access Control: A Security Analysis for Libraries.
Proceedings of the 17th IEEE Computer Security Foundations Workshop, 2004

Verifying policy-based security for web services.
Proceedings of the 11th ACM Conference on Computer and Communications Security, 2004

2003
Stack inspection: Theory and variants.
ACM Trans. Program. Lang. Syst., 2003

Typing correspondence assertions for communication protocols.
Theor. Comput. Sci., 2003

Model checking mobile ambients.
Theor. Comput. Sci., 2003

Equational Properties Of Mobile Ambients.
Math. Struct. Comput. Sci., 2003

Authenticity by Typing for Security Protocols.
J. Comput. Secur., 2003

TulaFale: A Security Tool for Web Services.
Proceedings of the Formal Methods for Components and Objects, 2003

2002
Region analysis and a pi-calculus with groups.
J. Funct. Program., 2002

Types for the Ambient Calculus.
Inf. Comput., 2002

Automating Type Soundness Proofs via Decision Procedures and Guided Reductions.
Proceedings of the Logic for Programming, 2002

Typing One-to-One and One-to-Many Correspondences in Security Protocols.
Proceedings of the Software Security -- Theories and Systems, 2002

XML Web Services: The Global Computer?
Proceedings of the Foundations of Information Technology in the Era of Networking and Mobile Computing, 2002

Authenticity Types for Cryptographic Protocols.
Proceedings of the Formal Aspects of Security, First International Conference, 2002

Finite-Control Mobile Ambients.
Proceedings of the Programming Languages and Systems, 2002

Types for Cryptographic Protocols.
Proceedings of the CONCUR 2002, 2002

2001
Logical Properties of Name Restriction.
Proceedings of the Typed Lambda Calculi and Applications, 5th International Conference, 2001

A Type and Effect Analysis of Security Protocols.
Proceedings of the Static Analysis, 8th International Symposium, 2001

Types for Cyphers: Thwarting Mischief and Malice with Type Theory.
Proceedings of the 3rd international ACM SIGPLAN conference on Principles and practice of declarative programming, 2001

Typing a multi-language intermediate code.
Proceedings of the Conference Record of POPL 2001: The 28th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, 2001

The Complexity of Model Checking Mobile Ambients.
Proceedings of the Foundations of Software Science and Computation Structures, 2001

2000
Mobile ambients.
Theor. Comput. Sci., 2000

Secrecy, Group Creation.
Proceedings of the First Irish Conference on the Mathematical Foundations of Computer Science and Information Technology, 2000

Anytime, Anywhere: Modal Logics for Mobile Ambients.
Proceedings of the POPL 2000, 2000

Region Analysis and a pi-Calculus wiht Groups.
Proceedings of the Mathematical Foundations of Computer Science 2000, 2000

Ambient Groups and Mobility Types.
Proceedings of the Theoretical Computer Science, 2000

Notes on Nominal Calculi for Security and Mobility.
Proceedings of the Foundations of Security Analysis and Design, 2000

1999
Bisimilarity as a Theory of Functional Programming.
Theor. Comput. Sci., 1999

Relating operational and denotational semantics for input/output effects.
Math. Struct. Comput. Sci., 1999

Compilation and Equivalence of Imperative Objects.
J. Funct. Program., 1999

A Calculus for Cryptographic Protocols: The spi Calculus.
Inf. Comput., 1999

Preface.
Proceedings of the Third Workshop on Higher-Order Operational Techniques in Semantics, 1999

Types for Mobile Ambients.
Proceedings of the POPL '99, 1999

Mobility Types for Mobile Ambients.
Proceedings of the Automata, 1999

1998
A Bisimulation Method for Cryptographic Protocols.
Nord. J. Comput., 1998

A Concurrent Object Calculus: Reduction and Typing.
Proceedings of the 3rd International Workshop on High-Level Concurrent Languages, 1998

1997
Preface.
Proceedings of the Second Workshop on Higher-Order Operational Techniques in Semantics, 1997

Reasoning about Cryptographic Protocols in the Spi Calculus.
Proceedings of the CONCUR '97: Concurrency Theory, 1997

1996
Five Axioms of Alpha-Conversion.
Proceedings of the Theorem Proving in Higher Order Logics, 9th International Conference, 1996

Concurrent Haskell.
Proceedings of the Conference Record of POPL'96: The 23rd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, 1996

Bisimilarity for a First-Order Calculus of Objects with Subtyping.
Proceedings of the Conference Record of POPL'96: The 23rd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, 1996

1994
A Tutorial on Co-induction and Functional Programming.
Proceedings of the 1994 Glasgow Workshop on Functional Programming, 1994

A Sound Metalogical Semantics for Input/Output Effects.
Proceedings of the Computer Science Logic, 8th International Workshop, 1994

1993
A Mechanisation of Name-Carrying Syntax up to Alpha-Conversion.
Proceedings of the Higher Order Logic Theorem Proving and its Applications, 1993

An Operational Semantics for I/O in a Lazy Functional Language.
Proceedings of the conference on Functional programming languages and computer architecture, 1993

Factoring an Adequacy Proof (Preliminary Report).
Proceedings of the 1993 Glasgow Workshop on Functional Programming, 1993

1992
Functional programming and input/output.
PhD thesis, 1992

Experience with Embedding Hardware Description Languages in HOL.
Proceedings of the Theorem Provers in Circuit Design, 1992

The Formal Definition of a Synchronous Hardware-Description Language in Higher Order Logic.
Proceedings of the Proceedings 1992 IEEE International Conference on Computer Design: VLSI in Computer & Processors, 1992


  Loading...