Utilisateurs de Perl à Paris

Paris.pm canal assombri


Doukipudonktan ?

L'obfuscation, ou assombrissement en français, consiste à façonner un bout de code ou un programme afin de le rendre totalement incompréhensible à un lecteur humain, même aidé d'outils informatiques. Il s'agit plus ou moins d'établir un dialogue secret entre le programmeur et sa machine, qui sera la seule à comprendre ce qu'il demande, et à l'exécuter.

Bien sûr, la performance n'est pas du tout le critère principal. En revanche l'aspect artistique ou humoristique d'un programme peut être particulièrement apprécié.

En Perl, un précuseur est Randal L. Schwartz avec ses scripts JAPH.

Avant lui, un certain Larry Wall a fait quelques bons résultats à l'International Obfuscated C Code Contest :

Puis il s'est occupé à produire un language dont le code source semblerait assombri, quel que soit le programme écrit...

C'est quoi le jeu ?

Les programmeurs C ont l'Obfuscated C Contest (ou IOCCC), nous nous avons l'Obfuscated Perl Contest, organisé par The Perl Journal.

D'ailleurs, voici nos résultats aux dernières éditions du concours...

ConcoursParticipants (et gagnants) Paris.pm
OPC 5GagnantsPropositions : 72
dont Paris.pm : 10
Philippe Bruhat : 3ème ex-æquo 4 fois avec lui-même dans la catégorie 3 Inner Beauty
Philippe Bruhat : The Best Ever (mais hors concours) dans la catégorie 4 The Old Standby
Stéphane Payrard : catégorie 1 Create A Diversion
Jean Forget : catégorie 3 Inner Beauty
Jean Forget : catégorie 3 Inner Beauty
Philippe Bruhat : catégorie 3 Inner Beauty (hors concours)
Philippe Bruhat : catégorie 4 The Old Standby
OPC 4GagnantsPropositions : 56
dont Paris.pm : 2
Philippe Bruhat : 2ème dans la catégorie Make believe you're another language
Philippe Bruhat : catégorie Print a human-readable "The Perl Journal"
OPC 3GagnantsPropositions : 73
dont (futur) Paris.pm : 1
Stéphane Payrard : 1er dans la catégorie Most creative
OPC 1GagnantsPropositions : 53Aucun
OPC 0GagnantsPropositions : 13Aucun

Et encore ?

Jérome Quelin de Lyon.pm a écrit un interpréteur Befunge inclus dans la distribution du VM Parrot et pratique la version perlienne du golf.

Nous jouons également beaucoup avec l'expression $A++, que nous essayons d'assombrir de la pire manière possible...

D'autres expressions devraient bientôt subir le même sort...

Sur un mode plus... didactique, BooK a fait un lightning talk sur le sujet à YAPC::Europe 2000


HTML 5 - CSS v3 Mongueurs de Paris, le 13 janvier 2013 Copyright © The Paris Perl Mongers, 1999-2024