Title: Programming Languages as Designed Objects
Author(s): Stuart Mawler
Affiliation: Virginia Tech
Presented At: STiS 2008
Primary Topic Area: S&T Studies
What motivates the design of a new programming language (or the extension of an existing language)? One might reasonably assume that technical considerations form the primary motivations in such a design task; however, there are a host of non-technical factors that might be just as important to a designer. This paper investigates the degree to which a variety of written resources address the relevance of non-technical factors in design decisions for programming language creation and extension. Of particular interest is the extent to which resources address power dynamics in some way, be that in terms of labor, community, personal, or other aspects. The conclusion is that social forces are critically under-analyzed in the design of programming languages. Primary source and computer science literatures all point toward the importance of social forces in the shaping of programming language design, though often un-reflexively. Instead of delving into programming languages like the any other activity or artifact, social scientists have seemed to approach languages simply as technical tools, black boxing them without concern to unpack the power struggles and cultural assumptions that go into their creation.