1 · 2 · 3 · 4 · 5

The Shape of its Own Destruction


Have you ever stopped to think just how much of your day-to-day communication is mediated through your keyboard, and the options that it makes available? If you are typing on a standard Western computer, you are for the most part offered up a particular palette of alphabetical, numerical and punctuation symbols that, though varying a little from maker to maker and through time, is consistent and familiar. Of course, there are other ways of inputting or selecting a character than the keyboard, but none so immediate and easy.


So it is that, when a symbol is required for a new function, we are likely to select one that is already available to us there on our keyboard, ready and waiting. Especially if it doesn’t have an overwhelmingly definite meaning attached, like the question mark. For this reason perhaps, there are many uses made of the tilde in the world of computer programming.


One of these, in the programming language C++, is to indicate the destructor of a certain class (a class being sort of like a template of characteristics for creating objects). When placed before the class name, the tilde flips it into the dark side: it is now the destroyer of all instances of that class. For instance, the destructor of the class ‘world’ would be ‘~world.’ When this destructor is deployed, all instances of ‘world’ will be removed, shut down, closed. In effect, in creating and naming each new class, the key to its destruction also comes into being; its equal and opposite destructive twin. Not unlike matter and antimatter; a perfect symmetry revolving around the presence or absence of the tilde.


The concept of creation and destruction being one and related, or at least inseparable parts of the same inevitable cycle, recurs again and again through diverse human religions and mythology – for instance the perpetual cycle of birth, life and destruction of the universe in Hindu cosmogony. So perhaps it is not unfitting for the concept to be found somewhere in the code of our latest guiding power: the internet.


In what sort of situation is the tilde-led destructor deployed? This is not quite the chaos of the beginning of the universe after all. There is order and method here.


A destructor might be used (or ‘called’) when the lifetime of an object has ended, when it is no longer necessary, or has ‘gone out of scope.’1 The function of the destructor is to clean up neatly after itself, safely removing or closing the obsolete objects in a superfast and very much less clunky game of Jenga. As the ‘ripple effect’ of sci-fi time travel movies kicks in, and characters fade from photographs, leaving gaps that are unnoticed by their in-another-possible-universe loved ones, the rest of the program carries on. The reason that this is important is that this neat and tidy destruction frees up resources such as memory, and lessens the likelihood of bugs.


If only we could remember to be so organised in other areas… of life, the internet, and everything. Because we don’t always tend to remember to clean up after things that are no longer relevant or wanted; the web is littered with old memes, obsolete in-jokes, no-longer-relevant gifs. Just as much for language (or at least writing, opinion, general verbosity) as imagery – more so in fact. As journalist Joseph Bernstein puts it, likening the furious turnover of snarky internet opinion and rhetoric to the unstoppable cycle of world creation and destruction, the tilde-destructor offers a tidy short-cut to the inevitable wish to tear things down:


‘...isn’t that basically the life cycle of popular language on the internet? You can’t name something new – a concept, a job title, an appellation, a hashtag – without creating the possibility that people will come to hate it. So why not build the acknowledgement of that fact into our punctuation?’2

1: LearnCPP.com, Destructors (2016)


2: Joseph Bernstein, The Hidden Language Of The ~Tilde~ (2015)

All content unless otherwise specified © Louise Evans 2017