Usability Hypotheses in the Design of Plaid
Plaid is a research programming language with a focus on typestate, permissions, and concurrency. Typestate describes ordering constraints on method calls to an object; Plaid incorporates typestate into both its object model and its type system. Permissions, incorporated into Plaid’s type system and runtime, describe whether a reference can be aliased and whether aliases can change that reference. Permissions support static typestate checking, but they also allow Plaid’s compiler to automatically parallelize Plaid code. In this paper, we describe the usability-related hypotheses that drove the design of Plaid. We describe the evidence, both informal and scientific, that inspired and (in some cases) validated these hypotheses, and reflect on our experience designing and validating the language.
Tue 21 OctDisplayed time zone: Tijuana, Baja California change
15:30 - 17:00 | |||
15:30 22mTalk | Wyvern: Impacting Software Security via Programming Language Design PLATEAU Darya Melicher Carnegie Mellon University, Alex Potanin Victoria University of Wellington, Jonathan Aldrich Carnegie Mellon University File Attached | ||
15:52 22mTalk | Considering Productivity Effects of Explicit Type Declarations PLATEAU Michael Coblenz Carnegie Mellon University, Jonathan Aldrich Carnegie Mellon University, Brad A. Myers Carnegie Mellon University, Joshua Sunshine Carnegie Mellon University File Attached | ||
16:15 22mTalk | Usability Hypotheses in the Design of Plaid PLATEAU File Attached | ||
16:37 22mOther | Group Activity PLATEAU |