Programming languages are languages — “unnatural” languages because they are constructed explicitly; “formal” languages because they rely on mathematical notations and are described mathematically; “machine” languages because they are used to communicate with machines: but because they are read and written by humans, supported by human communities and forming those communities in turn, programming languages are “human” languages above all.
Programming languages adopt structural elements from natural language, including syntax, grammar, vocabulary, and even some sentence structure. Other aspects are given little attention, including noun declension, verb tense, and situation-appropriate register. Semiotics shows how language use can connote and imply, and will lead to interpretation. Language involves larger level structure too: conversations, stories, and documents of all kinds. Language supports both cognitive and affective processes, and is involved in building mental models that we use to recall, reason, and respond.
Programming is a complex activity, uncertain yet precise, individual and social, involving intent and interpretation.
Language is not the accident of programming - it is the essence.
Mon 21 JunDisplayed time zone: Eastern Time (US & Canada) change
18:15 - 21:00 | Monday EveningPapers at HOPL Chair(s): Steve Blackburn Australian National University, Andrew Black Portland State University | ||
18:15 60mKeynote | programmingLanguage as Language; Papers | ||
19:45 75mTalk | The Evolution of Smalltalk from Smalltalk-72 through Squeak Papers Daniel Ingalls None DOI |