Hello, World
[S,orch] 2020 duration: 8' solo: S – 2.2.2.2 – 2.2.0.0 – perc – str
Description
“Hello, World”: How computer code challenges a composer
One evening, before the pandemic, Prof. Enrico Pasini, coordinator of CODEFEST, the world’s first festival devoted to source code, asked whether music could be imagined on the basis of programming languages. “Programs can generate music,” he said, “but can code itself be set to music?”
I considered the idea and replied that it seemed entirely possible. I could compose such a piece. But which code?
That led me to Hello, World. When a programming language is created, Pasini explained, a simple test is performed to see if it works: making the words “Hello, World” appear on the screen.
I accepted the idea and began work.
As the project was conceived as a small song cycle, a selection was necessary. I chose four very different languages: B, Unix Shell, Delphi and Malbolge.
Some instructions consist of recognizable English words, others are completely opaque. This contrast fascinated me. I treated the code as expressive text, converting pronounceable symbols into words and retaining the English terms, with clear instructions for their pronunciation.
In retrospect, the process was both demanding and exhilarating. Every sign required unusual care, yet each suggested melody, harmony, rhythm and orchestration. Whether playful or serious, the project became a genuine adventure, for which I remain grateful to its inspired commissioner.
___________________________
«Hello, World»: il codice sfida il compositore
Una sera, prima della pandemia, il prof. Enrico Pasini, coordinatore del CODEFEST, il primo festival al mondo dedicato al codice sorgente, mi ha domandato se fosse possibile immaginare musica che partiva dai linguaggi di programmazione. «Perché, come sai, ci sono programmi che generano musica – mi ha detto. Ma la cosa che mi interessa è capire se si possa mettere in musica del codice».
Ci ho pensato un po’ su e gli ho risposto che sì, lo si poteva immaginare. Avrei potuto comporre un brano come quello che mi chiedeva. Ma quale codice aveva in mente?
È stato così che ho scoperto Hello, World. Perché – mi ha spiegato – quando si inventa un linguaggio di programmazione, cioè una sintassi, una grammatica, una serie di istruzioni che servono a far funzionare un computer, alla fine si fa un picoclo test per vedere se effettivamente «gira», per mostrarne le basi. E il test universale, secondo una tradizione ormai consolidata, consiste nel far comparire sul monitor la dicitura “Hello, World” (con lievi varianti legate alla presenza della virgola o di un punto esclamativo finale – gli informatici non sono dei filologi).
L’idea mi è piaciuta molto. «Accetto», gli ho detto. E siamo partiti.
Considerando che il progetto era quello di scrivere una breve raccolta di Lieder, bisognava operare una scelta, perché i linguaggi di programmazione sono molti. Ne ho dunque scelti quattro, B, Unix Shell, Delphi e Malbolge, piuttosto diversi uno dall’altro.
Alcune delle istruzioni che contengono sono comprensibili perché composte di parole inglesi, benché con una punteggiatura e una sintassi per me vagamente futuriste; altre mi sono completamente oscure. Ma proprio per questo mi divertivano, mi stimolavano: intendevo prenderle molto sul serio, considerarle testi espressivi, come se contenessero le consuete parole importanti che si mettono in musica – amore, dolore, addio, gioia, patria, tormento… E così ho fatto, trasformando in parole tutti i segni
(come aperta parentesi tonda, ci minuscola o punto e virgola), da pronunciare in italiano, e lasciando le parole inglesi com’erano, prescrivendo per l’interprete la pronuncia, naturalmente, nella lingua appropriata.
Ripensandoci ora, la composizione è stata un processo certosino ed eccitante insieme: ogni carattere, ogni frammento andava ovviamente trattato con una cura maggiore di quella abituale (le virgole, ad esempio, di solito non vengono intonate nei Lieder); ma i segni, a modo loro, mi hanno parlato e si sono lasciati trasformare facilmente in melodia, suggerendo nel contempo l’armonia, il ritmo, l’orchestrazione. E così, alla fine, mi sembra che l’intero gioco, strampalato e serissimo, sia stata una fantastica avventura, della quale sono molto grato al geniale committente.
(Nicola Campogrande)
MM 2311115
hire material
Description
Description
“Hello, World”: How computer code challenges a composer
One evening, before the pandemic, Prof. Enrico Pasini, coordinator of CODEFEST, the world’s first festival devoted to source code, asked whether music could be imagined on the basis of programming languages. “Programs can generate music,” he said, “but can code itself be set to music?”
I considered the idea and replied that it seemed entirely possible. I could compose such a piece. But which code?
That led me to Hello, World. When a programming language is created, Pasini explained, a simple test is performed to see if it works: making the words “Hello, World” appear on the screen.
I accepted the idea and began work.
As the project was conceived as a small song cycle, a selection was necessary. I chose four very different languages: B, Unix Shell, Delphi and Malbolge.
Some instructions consist of recognizable English words, others are completely opaque. This contrast fascinated me. I treated the code as expressive text, converting pronounceable symbols into words and retaining the English terms, with clear instructions for their pronunciation.
In retrospect, the process was both demanding and exhilarating. Every sign required unusual care, yet each suggested melody, harmony, rhythm and orchestration. Whether playful or serious, the project became a genuine adventure, for which I remain grateful to its inspired commissioner.
___________________________
«Hello, World»: il codice sfida il compositore
Una sera, prima della pandemia, il prof. Enrico Pasini, coordinatore del CODEFEST, il primo festival al mondo dedicato al codice sorgente, mi ha domandato se fosse possibile immaginare musica che partiva dai linguaggi di programmazione. «Perché, come sai, ci sono programmi che generano musica – mi ha detto. Ma la cosa che mi interessa è capire se si possa mettere in musica del codice».
Ci ho pensato un po’ su e gli ho risposto che sì, lo si poteva immaginare. Avrei potuto comporre un brano come quello che mi chiedeva. Ma quale codice aveva in mente?
È stato così che ho scoperto Hello, World. Perché – mi ha spiegato – quando si inventa un linguaggio di programmazione, cioè una sintassi, una grammatica, una serie di istruzioni che servono a far funzionare un computer, alla fine si fa un picoclo test per vedere se effettivamente «gira», per mostrarne le basi. E il test universale, secondo una tradizione ormai consolidata, consiste nel far comparire sul monitor la dicitura “Hello, World” (con lievi varianti legate alla presenza della virgola o di un punto esclamativo finale – gli informatici non sono dei filologi).
L’idea mi è piaciuta molto. «Accetto», gli ho detto. E siamo partiti.
Considerando che il progetto era quello di scrivere una breve raccolta di Lieder, bisognava operare una scelta, perché i linguaggi di programmazione sono molti. Ne ho dunque scelti quattro, B, Unix Shell, Delphi e Malbolge, piuttosto diversi uno dall’altro.
Alcune delle istruzioni che contengono sono comprensibili perché composte di parole inglesi, benché con una punteggiatura e una sintassi per me vagamente futuriste; altre mi sono completamente oscure. Ma proprio per questo mi divertivano, mi stimolavano: intendevo prenderle molto sul serio, considerarle testi espressivi, come se contenessero le consuete parole importanti che si mettono in musica – amore, dolore, addio, gioia, patria, tormento… E così ho fatto, trasformando in parole tutti i segni
(come aperta parentesi tonda, ci minuscola o punto e virgola), da pronunciare in italiano, e lasciando le parole inglesi com’erano, prescrivendo per l’interprete la pronuncia, naturalmente, nella lingua appropriata.
Ripensandoci ora, la composizione è stata un processo certosino ed eccitante insieme: ogni carattere, ogni frammento andava ovviamente trattato con una cura maggiore di quella abituale (le virgole, ad esempio, di solito non vengono intonate nei Lieder); ma i segni, a modo loro, mi hanno parlato e si sono lasciati trasformare facilmente in melodia, suggerendo nel contempo l’armonia, il ritmo, l’orchestrazione. E così, alla fine, mi sembra che l’intero gioco, strampalato e serissimo, sia stata una fantastica avventura, della quale sono molto grato al geniale committente.
(Nicola Campogrande)
Table of contents
| 1. | In B |
| 2. | In Unix Shell |
| 3. | In Delphi |
| 4. | In Malbolge |
World premiere
World premiere: Milan/Italy, June 9, 2021
Commissioned by CodeFest, Codexpo and Università di Torino