Do Androids Speak in Programming Languages?
Philip K. Dick asked, “Do Androids Dream of Electric Sheep?” in his book’s title: a cheeky play on words asking whether androids would count electric sheep instead of ‘real’ sheep to fall asleep. In a similar vein, in the month of International Language Day, I wonder what parallels exist between ‘real’ languages and those that belong to androids and programmers.
Thousands of high-level programming languages have been invented in the last century. Oxford’s A Dictionary of Computing has declared each of these as a ‘formal language’, languages with their own ‘explicit and precise rules for syntax and semantics’[i].
In contrast, ‘natural languages’ such as English, despite having formal rules evolve with use, falling short of precise syntactic laws, much less semantic ones. Nonetheless the analogues between both are undeniable and the history of this school of thought is long and elaborate, tracing back all the way to Butler Lampson’s 1972 editorial “Programmers as Authors”. Another interesting example is the very existence of Kernighan and Plaugher’s “The Elements of Programming Style”, which has, without a doubt, been (very cheekily!) named after Strunk and White’s magnum opus, “The Elements of Style‘’.
Vikram Chandra, author of “Sacred Games” and “Geek Sublime: The Beauty of Code, the Code of Beauty”, embodies the very parallels that I have hitherto tried to establish. His own take on this is much more cautious. He opines that despite all parallels, the central difference between the two is that ‘formal programming languages’ needs to ultimately produce logic and cohere together logically, while natural language ultimately needs to ‘affect emotion’. But then we have Donald Knuth (designer of and a living legend statement about a program designed by Stan Poley called SOAP (Symbolic Optimal Assembly Program): “Reading it was just like hearing a symphony, because every instruction was sort of doing two things and everything came together gracefully”[ii].
It is undeniable then, that like good writing, good coding too strives to pick the right syntax, the right variable, so as to ‘express’ logic and emotion in whatever way is the ‘optimum’ which is a very subjective concept: It aims for elegance. If androids do indeed speak in programming languages, I wonder what their
poems are like.
References: [i] Edmund Wright and John Daintith. (2008). A Dictionary of Computing. [Online]. Oxford University Press. [ii] Donald E. Knuth. (1997). The Art of Computer Programming, Volume 1 (3): Addison Wesley Longman Publishing Co.:USA
Article Written By:
Raisa Binte Huda
Student, University of Dhaka