PLIERS

Abstract

Programming language design requires making many usability-related design decisions. However, existing HCI methods can be impractical to apply to programming languages: languages have high iteration costs, programmers require significant learning time, and user performance has high variance. To address these problems, we adapted both formative and summative HCI methods to make them more suitable for programming language design. We integrated these methods into a new process, PLIERS, for designing programming languages in a user-centered way. We assessed PLIERS by using it to design two new programming languages. Glacier extends Java to enable programmers to express immutability properties effectively and easily. Obsidian is a language for blockchains that includes verification of critical safety properties. Empirical studies showed that the PLIERS process resulted in languages that could be used effectively by many programmers and revealed additional opportunities for language improvement.

Document Details

Document Type
Pub Defense Publication
Publication Date
Jul 23, 2021
Source ID
10.1145/3452379

Entities

People

  • Brad A. Myers
  • Celeste Barnaby
  • Gauri Kambhatla
  • Jenna L. Wise
  • Jonathan Erik Aldrich
  • Joshua Sunshine
  • Michael Coblenz
  • Paulette Koronkevich

Organizations

  • Carnegie Mellon University
  • International Business Machines Corporation (Armonk, NY)
  • Meta
  • National Science Foundation
  • United States Department of Defense
  • University of British Columbia
  • University of Michigan

Tags

Fields of Study

  • Computer science
  • Engineering

Readers

  • Manufacturing Engineering.
  • Parallel and Distributed Computing.
  • Team-Based Human-Centered Cognitive Task Decision Making and Information Performance.