Human Aspects of Types and Reasoning AssistantsHATRA 2020
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 identify and establish a research agenda for collaborative work in this space; (2) 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.
HATRA 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 three segments. In the first segment, authors of accepted extended abstracts will present their work in approximately 20-minute time slots, followed by 10 minutes of discussion. To promote discussion, participants will be divided into small groups; then, the whole group will re-convene to discuss high-level points that arose in the small group discussions. In the second segment, authors of accepted papers will present their work. Then, in the third segment, we will conduct an activity to identify interesting research questions and help the community establish a research agenda. The organizers will produce a report after the workshop that catalogs the resulting agenda.
Call for Papers
HATRA welcomes two kinds of submissions:
- One-page extended abstracts summarizing existing published work that would be of interest to the community.
- Research proposals, position papers, and early-stage result papers. These come in short (up to four pages) and long (up to eight pages) varieties. 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