Aux (codes) sources de la poésie
Le livre ./code --poetry
est un objet original rĂ©unissant programmation, poĂ©sie et graphisme, que lâamoureux du code peut prendre plaisir Ă avoir dans sa bibliothĂšque pour le feuilleter de temps en temps et mĂ©diter sur toute cette littĂ©rature pour machines quâil a Ă©crite depuis ses premiers Ă©mois binaires. Attelage a priori improbable, Daniel Holden est programmeur et travaille dans les jeux vidĂ©os Ă MontrĂ©al alors que Chris Kerr est un poĂšte qui vit Ă Londres. Ils ont en fait frĂ©quentĂ© la mĂȘme Ă©cole et se connaissent depuis lâĂąge de onze ans. Explorons leur livre :
- Daniel Holden et Chris Kerr, ./code --poetry, Broken Sleep Books, 2023, ISBN 978-1-915760-89-0.
Sommaire
- Sources et rendus
- Autres textes pour « massive nerds »
- Le logos informatique
- Notes diverses
- Bibliographie
Sources et rendus
Un code poem est un code source mĂ©langĂ© Ă de la poĂ©sie, alors on pourrait traduire lâexpression par un mot composĂ© comme code-poĂšme ou poĂšme-source. Jâutiliserai plutĂŽt cette derniĂšre traduction, le mot « source » ayant clairement des connotations poĂ©tiques. Pour ce qui est du concept de code poetry, poĂ©sie-source me satisfait moins. Ă vous de voir.
Dans les poÚmes-sources du livre, parfois les mot-clés du langage utilisé font partie du texte du poÚme, parfois le poÚme est simplement contenu dans des commentaires que la coloration syntaxique et la mise en page aideront à mettre en valeur. Utiliser des chaßnes de caractÚres est une autre solution facile. On peut aussi généralement utiliser des noms de variables (éventuellement inutilisées), de fonctions, de labels, etc. Dans certains poÚmes-sources les parties de code imprononçables sont isolées en haut ou en bas du code source comme dans chernobyl.rkt. Le code est toujours mis en forme avec soin et constitue parfois un calligramme, mot inventé par Apollinaire, par exemple une raquette de tennis pour Processing. Les auteurs se réclament également de la poésie concrÚte.
On notera que dans le cas oĂč lâon utilise Ă©galement les mots-clĂ©s du langage dans le texte poĂ©tique, on sera bien sĂ»r dans la plupart des langages plutĂŽt incitĂ© Ă Ă©crire en anglais. Mais on pourrait aussi considĂ©rer leurs mots-clĂ©s comme des parties dâun mot, par exemple for(midable=0;;) // jâĂ©tais fort minable
. Sinon, on pourra utiliser un langage Logo en français ou quelques autres rares langages pour batracien hexagonal que vous pourrez citer en commentaires.
Une contrainte majeure respectĂ©e dans le livre est quâun programme doit ĂȘtre exĂ©cutable : il produit alors souvent de lâart ASCII, soit statique soit le plus souvent dynamique comme dans water.c
, mais peut aussi produire un texte mixant poésie et codes informatiques (des balises HTML par exemple dans divide.php
). Quant au titre du poĂšme, câest simplement le nom du fichier source.
Les sujets abordĂ©s dans ces poĂšmes sont variĂ©s : expĂ©riences personnelles, thĂ©ories du complot, dystopies, technologie et environnement, etc. DâaprĂšs lâintroduction du livre, chaque poĂšme-source et sa sortie sont censĂ©s reflĂ©ter le caractĂšre du langage informatique utilisĂ©. On trouvera pour chacun des vingt-six poĂšmes le code source sur la page gauche, avec coloration syntaxique, sur fond clair ou sombre, et sur la page droite la sortie. Le livre se double dâun site compagnon https://code-poetry.com/ qui a lâavantage de montrer les versions animĂ©es des sorties. Le livre essaie nĂ©anmoins de rendre cela par des successions de copies dâĂ©cran quand câest possible. Comme la banniĂšre en haut du site web semble boguĂ©e ou incomplĂšte, voici les liens directs vers les vingt-six codes disponibles : Javascript, Julia, PHP, Racket, C++, Piet, Bash, Shakespeare, Perl, C, Haskell, C, J, Batch, Ruby, Objective C, Go, Processing, Ante, Befunge, C#, Python, Python, Erlang, Lua, Brainfuck. On notera que parmi les langages vedettes, le C et le Python ont droit Ă deux codes. Et on saluera les efforts du programmeur pour arriver Ă maĂźtriser les bases de tous ces langages pour la rĂ©daction du livre. Si vous y trouvez un de vos langages prĂ©fĂ©rĂ©s, vous pouvez partager en commentaires les particularitĂ©s ou astuces des codes prĂ©sentĂ©s (on frise parfois lâoffuscation).
Autres textes pour « massive nerds »
AprÚs les vingt-six poÚmes, nous tombons sur la Code Poetry Manual Page, placée dans la section 7 des man-pages
(Overview, conventions, and miscellaneous) : ./code --poetry
- A collection of executable art. Chaque poÚme ou langage a droit à un paragraphe de commentaires (techniques, littéraires ou humoristiques).
Le livre se termine par un texte de chaque auteur. Le premier texte, celui du poĂšte, explique les contraintes liĂ©es Ă la mise en page et Ă la prĂ©sentation graphique des codes sources et de leurs sorties Ă la fois dans le livre et sur le site compagnon, puis se termine par une liste dâautres livres dĂ©jĂ publiĂ©s sur le sujet, en insistant sur ce en quoi le prĂ©sent livre sâen dĂ©marque.
Le second texte est Ă©crit par le programmeur du tandem et sâintitule (si lâon interprĂšte le graphisme dâintroduction) « I love ASCII ». Il tente dâabord dâexpliquer au candide (qui serait tombĂ© par hasard sur ce livre ?) ce quâest un langage de programmation pour lâintroduire Ă la culture geek. Il explique par exemple la multiplicitĂ© des langages et dit :
Les gens ont donc tendance Ă sâidentifier Ă certains langages plus quâĂ dâautres, ce qui entraĂźne un effet dâamplification. Au fur et Ă mesure que les gens affluent vers le langage qui leur correspond le mieux, la culture sâhomogĂ©nĂ©ise. Des frontiĂšres sont tracĂ©es, des nations se dĂ©veloppent et des drapeaux sont hissĂ©s.
Ces factions sont connues pour se livrer à des « guerres de religion » à propos du meilleur style de programmation. La lecture des arguments est une expérience en soi, quelque part entre un débat théorique entre physiciens des particules et une dispute enfantine sur Porsche versus Ferrari.
Le texte se termine par la dĂ©claration dâamour au code ASCII annoncĂ©e en titre, avec des explications intĂ©ressantes sur les origines de certains caractĂšres. Mais quand lâauteur taquine sa compagne en lui disant quâil va se faire tatouer les quatre-vingt-quinze caractĂšres imprimables du code ASCII, elle lui rĂ©pond en substance : « Please donât, you massive nerd! »
Finalement, la derniÚre page imprimée du livre nous invite à nous mettre au travail avec la chaßne de caractÚres layoutyourunrest
Ă©crite en majuscules puis en minuscules. On peut traduire ça par : « exposez votre trouble ». Câest en fait la devise de la maison dâĂ©dition Broken Sleep Books (dont le fondateur est insomniaque !), spĂ©cialisĂ© dans la poĂ©sie et basĂ©e au Pays de Galles. Alors lecteur linuxien, es-tu inspirĂ© ? Nâes-tu pas en mal de dĂ©fi depuis que TapTempo a Ă©tĂ© portĂ© dans ton langage favori ? Are you experienced?
Le logos informatique
Le verbe créateur est bien sûr un thÚme biblique. Wikipedia rappelle également que :
Le terme « poĂ©sie » et ses dĂ©rivĂ©s « poĂšte », « poĂšme » viennent du grec ancien ÏοίηÏÎčÏ / poĂesis par le verbe ÏÎżÎčÎÏ / poiĂ©Ć, « faire, crĂ©er » : le poĂšte est donc un crĂ©ateur, un inventeur de formes expressives [âŠ]
On sait bien que les Ă©crivains crĂ©ent des mondes, certains poussant mĂȘme la chose Ă lâextrĂȘme, comme J.R.R. Tolkien qui a crĂ©Ă© tout un monde avec sa mythologie, son histoire, sa gĂ©ographie, ses crĂ©atures, ses langues, ses poĂšmes et chansons, etc. Mais les dĂ©veloppeurs ne sont pas en reste. Que le logos informatique soit crĂ©ateur et crĂ©e des mondes, voire le monde, pour le meilleur et pour le pire, quiconque a vĂ©cu lâĂ©volution de notre sociĂ©tĂ© depuis les dĂ©buts du web pourra difficilement en douter.
Notes diverses
- Difficile aprÚs cette conclusion de ne pas avoir envie de réécouter Un autre monde (1984) de Téléphone. « Dansent les ombres du monde ».
- Cette alliance de la poĂ©sie et de la technologie mâa fait aussi penser Ă Anne Clark, qui dans les annĂ©es 80 dĂ©clamait ses textes dans un style dit « spoken word » sur fond de musique Ă©lectronique new wave. Son morceau le plus connu est Our Darkness (1984), qualifiĂ© plus rĂ©cemment par certains de proto-house. Elle a continuĂ© sa carriĂšre et en 2022 a sorti un album Borderland (Found Music for a Lost World) dans un style musique de chambre. On y trouve en particulier un poĂšme de Mary E. Coleridge (1861-1907) intitulĂ© Lâoiseau bleu rĂ©citĂ© par Anne Clark : The Bluebird. Enfin, sur son site officiel, on voit quâen 2024 elle a prĂȘtĂ© sa voix Ă des installations rĂ©alisĂ©es par lâartiste Clemens von Wedemeyer qui sâintĂ©resse entre autres aux relations sociales, comme on peut le voir sur ces photos montrant des graphes : Social Geometry. Malheureusement, on ne lâentendra pas ; il aurait fallu aller Ă Berlin.
- Cette dĂ©pĂȘche nâest pas sans lien non plus avec Des nouvelles de Fortran n°6 oĂč jâĂ©voquais rĂ©cemment lâutilisation du langage dans les annĂ©es 60-70 pour explorer la gĂ©nĂ©ration automatique de poĂšmes.
- On notera que comprendre la poĂ©sie moderne anglo-saxonne peut parfois ĂȘtre ardu, la syntaxe de la langue, dĂ©jĂ plutĂŽt souple, subissant des contorsions et le vocabulaire puisant dans le vaste rĂ©pertoire de la langue anglaise. Sans compter ici le mĂ©lange avec le code source qui brouille parfois la lecture (faut-il lire les mots-clĂ©s du langage ?).
Bibliographie
- Chris Kerr et Daniel Holden, « Optimizing Code for Performance: Reading ./code --poetry » in Poetry and Contemporary Visual Culture / Lyrik und zeitgenössische Visuelle Kultur, édité par Magdalena Elisabeth Korecka et Wiebke Vorrath, Berlin, Boston: De Gruyter, pages 167-184, 2023, https://doi.org/10.1515/9783111299334-009, licence CC BY-NC-ND 4.0. Dans ce chapitre, on trouvera en particulier des explications éclairantes sur certains des poÚmes-sources du livre.
- Interview des auteurs du livre (en), Daniel Holden et Chris Kerr, par Aaron Kent, 11 octobre 2023.
- Alan Riddell, Typewritter Art, London Magazine Editions, 1975, PDF en ligne. Ce livre contient de belles illustrations de cet art de la machine à écrire, une forme de poésie concrÚte.
- LâentrĂ©e nerd dans Linguee.
- Le livre avait été évoqué dans la section Liens en août 2023 : https://linuxfr.org/users/gilcot/liens/what-is-code-poetry .
- Quatre poÚmes-sources du livre avaient déjà été publiés en 2019 sur le site https://www.welcometothejungle.com/fr/tags/developers-poem-programs .
Commentaires : voir le flux Atom ouvrir dans le navigateur