Most programming languages have been designed by committees or individuals. What happens if, instead, we throw open the design process and let lots of programmers weigh in on semantic choices? Will they avoid well-known mistakes like dynamic scope? What do they expect of aliasing? What kind of type-checking behavior will they choose? We investigate this issue by posing questions to programmers on Amazon Mechanical Turk. We examine several language features, in each case using multiple-choice questions to explore programmer preferences. We check the responses for consensus (agreement between people) and consistency (agreement across responses from one person). In general we find low consistency and consensus, potential confusion over mainstream features, and arguably poor design choices. In short, this preliminary evidence does not argue in favor of designing languages based on programmer preference.
Conference DayWed 25 OctDisplayed time zone: Tijuana, Baja California change
10:30 - 12:00
|Can We Crowdsource Language Design?|
|Assessing User Preferences in Programming Language Design|
Roger ChamberlainWashington University in St. Louis
|Replacing Phrase Structure Grammar with Dependency Grammar in the Design and Implementation of Programming Languages|