Human Aspects of Types and Reasoning AssistantsHATRA 2022
Programming language designers seek to provide strong tools to help developers reason about their programs. For example, the formal methods community seeks to enable developers to prove correctness properties of their code, and type system designers seek to exclude classes of undesirable behavior from programs. The security community creates tools to help developers achieve their security goals. In order to make these approaches as effective as possible for developers, recent work has integrated approaches from human-computer interaction research into programming language design. This workshop brings together programming languages, software engineering, security, and human-computer interaction researchers to investigate methods for making languages that provide stronger safety properties more effective for programmers and software engineers.
We have two goals: (1) to provide a venue for discussion and feedback on early-stage approaches that might enable people to be more effective at achieving stronger safety properties in their programs; (2) to facilitate discussion about relevant topics of participant interest.
The Third Workshop on Human Aspects of Types and Reasoning Assistants (HATRA ’22) is interested in two different kinds of contributions. First, extended abstracts that summarize an existing body of work that is relevant to the workshop’s topic; the presentations serve to familiarize the community, which may be diverse, with work that already exists. Second, research papers that describe a new idea, approach, or hypothesis in the space, and are presented as an opportunity for the authors to receive community feedback and for the community to seek inspiration from others.
The day will be divided into two segments. In the first segment, authors of accepted papers will present their work. In the second segment, we will conduct an “unconference”-style meeting. By allowing the participants to drive the agenda, we hope to focus on topics that provide stimulating and enlightening discussion.
Wed 7 DecDisplayed time zone: Auckland, Wellington change
09:00 - 10:00
|Program Synthesis Using Example PropagationVirtual|
Niek Mulleners Utrecht University, Johan Jeuring Utrecht University, Bastiaan Heeren Open University of the Netherlands, NetherlandsLink to publication
|Some Problems with Properties: A Study on Property-Based Testing in IndustryVirtual|
Harrison Goldstein University of Pennsylvania, Joseph W. Cutler University of Pennsylvania, Adam Stein University of Pennsylvania, Benjamin C. Pierce University of Pennsylvania, Andrew Head University of PennsylvaniaLink to publication
10:00 - 10:30
Catering and Social Events
10:30 - 12:00
|Exploring the Verifiability of Code Generated by GitHub Copilot|
Dakota Wong University of Waterloo, Austin Kothig University of Waterloo, Patrick Lam University of WaterlooLink to publication
|Holbert: Reading, Writing, Proving and Learning in the Browser|
HATRALink to publication Media Attached
|A Survey of Weak Reasoning Assistants|
Matthew Sotoudeh Stanford UniversityLink to publication
12:00 - 13:30
Catering and Social Events
13:30 - 15:00
|Static Information Flow Control Made Simple|
HATRALink to publication
Call for Papers
HATRA welcomes two kinds of submissions:
- Extended abstracts (one page) summarizing existing published work that would be of interest to the community.
- Research proposals, position papers, and early-stage result papers. Papers may be up to eight pages long, plus unlimited references. These may describe hypotheses, ideas for research, or early-stage results. The objective is to provide an opportunity for the authors to receive feedback from the community as well as to help inspire participants to identify and clarify their own research directions.
To encourage submission of ideas that may be published in other venues in the future, papers will not be published in the ACM Digital Library.
Topics of interest include, but are not limited to:
- Type system design
- Programming language evaluation
- Programming language and tool design methodology
- Interactive theorem provers
- Lightweight specification tools
- Proof engineering
- Psychology of programming
- Societal or social implications of programming languages and proof assistants
We request that papers be submitted anonymously when feasible. Extended abstracts are likely to include author names.
Papers should use the PACMPL templates (the same as the OOPSLA proceedings format).