Overall, this thesis has aimed at showing that the specific formal properties of source code have a functional pupose of enabling epistemic action based on understanding of a machine language and a problem domain, itself conjugated in various contexts.
Source code, as the base of software, belongs first and foremost to the technological realm, embodying a function and an intent of what should be achieved. Its aesthetics are thus inscribed within this technological essence by enabling the communication of the complex ideas which constitute the basis of software (its ideal version, as opposed to its implemented version, and its process of implementation, as opposed to its result).
In doing so, we have also confirmed and extended Piñeiros' work on describing code aesthetics as instrumental action, bridging his field of research of software developers with other kinds of source code, and confronting it with specific example. While Piñeiro's work thoroughly explores programmers' perspectives and discourses, it does not extend its findings to other aesthetic practices mentioned by programmers—by connecting it to related field, we inscribe the practice of programming within a wider field of creative practices.
We proposed a conceptualization of code as semantic matter, from which executable structures are built. This approach builds on Katherine Hayles' distinction between the media properties of print and code—the former being flat, the latter being deep—and has shown the aesthetic implications of such a distinction. The contribution was to enrich our understanding of what code depth is made of, and how surface-level syntactical tokens enable the creation of deep conceptual structures.
This complements the perspectives provided in Oram and Wilson's edited volume (
author, year)
. Instances of beautiful code have been given a practical framework as a way to idenfity positive aesthetic properties, beyond their praise by highly-skilled professionals.
In fact, forkbomb.pl
is a program whose function is to replicate itself until the computer on which it run crashes. By subverting the expectation of what a functional artefact should do, what is allowed, and what is not, this program text suggests more fundamental questions about what we expect from automatic productive processes. Nonetheless, it also gains artistic value from using the aesthetic devices of compression and double meaning, particularly in the use of my $strength
variable name.
Speaking of who writes program texts, we have not engaged with a kind of writing agent which, at the time of writing, remains relatively new. Large Language Models (LLMs) have shown a particular propensity to mimic human writing by operating a statistical lexical rendering of input text. Since the input text of these LLMs also includes source code, they are able to generate source code which achieves various degrees of ready-made functionality. Source code generation by these LLMs open up new questions which we have not addressed here, notably about natural language conversation as an interfacial affordance for source code, stylistic choice as a probabilistic result or individual choice, and the use and re-use of source code within non-commercial and commercial contexts, among others.
Finally, our focus on the knowledge-component of both aesthetics and source code has led us to venture into the application of cognitive sciences to fields such as programming, literature or architecture. Since this is still a burgeoning endeavour of active research, some of the connections evoked by the current literature between code and cognition, or beauty and cognition are still bound to evolve.