Attention, le concours de jeux de mots se termine fin janvier 2017 !

Posté par (page perso) . Édité par Davy Defaud, palm123, tankey et ZeroHeure. Modéré par tankey. Licence CC by-sa
Tags :
13
1
jan.
2017
LinuxFr.org

  B O N N E A N N É E 2 0 1 7

Pour fêter cette nouvelle année, le grand concours de jeux de mots continue sur LinuxFr.org. Ce jeu est ouvert à tous. L’idée est d’user et d’abuser de la notation des langages de programmation pour les en détourner en jeux de mots.

Bon, il ne faut pas le répéter : initialement le concours devait se terminer pour les fêtes avec des cadeaux pour Noël. Mais c’est un échec, peu de réponses ont été reçues et peu de personnes ont voté. Est‐ce que les sysadmins, développeurs, devops (…) manquent d’imagination ou sont‐ils tout simplement en vacances ?

Allez, pour une fois que nous avons un concours à la portée de tous ceux qui connaissent un langage de programmation, ne gâchons pas cette chance de gagner de vrais cadeaux.

« Rien n’est joué, tout est permis, rien ne va plus, tout est possible ! »

Les deux filles nerds discutent sur la manipulation des bits au grand bonheur des jeux de mots

Sommaire

Règlement

  1. disposer d’un compte sur LinuxFr.org, afin de poster son commentaire ou même de voter pour les autres propositions ;
  2. écrire dans un commentaire un code source valide dans n’importe quel langage de programmation (script shell, SQL, Rust…) ;
  3. l’objectif de ce code source est d’user des mots clés du langage, du nom des variables, de la forme des caractères, des symboles, des opérateurs, etc., afin de réaliser des jeux de mots agrémenté ou pas d’art ASCII ;
  4. le code source doit être publié sous une licence libre (ne pas oublier de la mentionner). ,---------, ," ,"| __________________________ ," ," | /---------------------------.| ," ," | | > id géniale || .---------. | | utilisateur inexistant || | -==----'| | | > conjure -version || | | | | Version: ImageMagick 6.9.3||-------,|`---= | | | > dc || / |==== ooo | ; | Ad0 CACA0 S0DA CAFE ApEr0 || / |(((( [33]| ," | 10 |; / /|(((( | ," '---------------------------' / | | |," /_)______________(_/ / | '---------' _____________________________/_ \ ,-----------, / oooooooooooooooo .o. oooo / \/ _ / / ==ooooooooooooooo==.o. ooo= / ,`\--{_) / /_==__==========__==_ooo__ooo=_/ /____________/ LinuxFr.org étant un site francophone, les jeux de mots en langue française seront appréciés. Aucune limite au nombre de réponses par personne ni à la taille du code source, juste les limitations techniques de LinuxFr.org.

Les premières participations

Dans l’ordre chronologique. Les scores indiqués sont ceux qui ont été constatés lors de la rédaction de cette dépêche. N’hésite pas à « plussoyer » ou « moinser » ces premières réponses.

Gof, avec un score mitigé de +6/-3

// licence CC0
0xcacap1-pi

Et un autre jeu de mots provenant du code source du noyau Linux :

// licence GPL 2
static const long HV_LINUX_GUEST_ID_HI = 0xB16B00B5p0;

Oliver H., avec un score de +5/-0

// licence CC0
#include <cstddef>
int main()
{
  auto C = NULL;
  auto avenir =  C + + 17  +  0xC00L;
  return avenir / 000'111;
}
// retourne 42

Eiffel, avec un score de +2/-0

// licence WTFPL
#include <stdlib.h>

#define R | (1 << 20) |
#define r | 1
#define V | (1 << 8) |

int main(void){
    int C;
    int avenir;

    avenir =  C + + 17  +  0xC00L;
    C = 0XF0000000 R 3 V 3 r;

    return (avenir --> C);
}
// C vaut 0xF0100103

Avec une contribution pour l’opérateur -->.

srb avec un score de +3/-0

# licence CC0

which 'kill cat' 'kill man'

more man; less tree & awk

rdhlnn avec un score de +2/-1

<!-- licence CC0 -->
<html>
    <head><title>Titre qui perd la t&#234;te. Est-ce encore du langage ? Ce n'est pas un po&#232;me.</title>
    <script>
    function amaplace(suisJe, maintenantInutile){
        var moinsQueRien=0;
            var leQuelDestinParmiLesSymboles= setInterval(function() {
                document.getElementById(suisJe).innerHTML+=maintenantInutile[moinsQueRien]; 
                moinsQueRien++;
                if(moinsQueRien==maintenantInutile.length){
                    clearInterval(leQuelDestinParmiLesSymboles);
                }
            }, 323);
    }
    </script>
    <style>
    body {
        font: 1.0em "Liberation Sans";
    }
    #troiscents + #quatrecents {
        font: 5.3pt sans-serif;
        color: #1E2E2E;
    }
    #neant {
        cursor: pointer;
        color: #DE5E27;
    }
    </style>
    </head>
    <body>
        <div id="troiscents">
            root@sansdirection:~$ mv /home/zer0 /dev/null <code id="neant" onclick="amaplace('quatrecents','Nulle&nbsp;part&nbsp;ne&nbsp;reste&nbsp;la&nbsp;function[...] Script&nbsp;sans&nbsp;humains,[...] Le&nbsp;num&#233;rique&nbsp;se&nbsp;divise&nbsp;par&nbsp;moinsQueRien&nbsp;en&nbsp;linterval. ');">[Un pas vers l'avant (OUI/NON)]</code>
        </div>
        <div id="quatrecents">
            Encore du sens pour root ?
        </div>
    </body>
</html>

serge_sans_paille avec un joli score de +5/-0

// licence CC BY-SA 4

using force = long/*evity*/;

using the = force;

the jedi(char acter[] = "luke" ) {
  return 0.f + the(&jedi);
}

Fabien Bodard avec un score de +3/-0

' Gambas module file
' licence WTFPL

Public Sub Main()

  ISay As File
  Gambas As String = Not Like "M{$,onsanto,afia}"

  With signal
    .Send(message("To Nature"))
    ISay = Open "YourE.yes" For Read Write Create
    If YouCan And YouNeed Then
      Do
        Something(Now())
        Raise EndOfThe
      Loop
    Endif
  End With
End

Récompenses

Les meilleures réponses seront sélectionnées parmi celles qui auront le plus de points « pertinents » et le moins de points « inutiles ».

Selon la qualité des jeux de mots, un ou plusieurs auteurs auront le privilège de gagner un livre de leur choix, parmi ceux des éditions suivantes :

Un CD Warmux remix et un DVD SupertuxKart seront également offerts par Libre games initiatives.

La réception des récompenses se fera par courrier électronique postal.

Sponsors

Merci à nos sponsors Libre games initiatives (papap), ENI et Eyrolles pour les nombreux livres gratuitement acheminés aux meilleurs contributeurs sur LinuxFr.org.

 logo libre games initiatives  Logo des éditions ENI Logo des éditions Eyrolles

Commentaires

Tout est encore possible, les scores sont peu élevés et plein de possibilités n’ont pas encore été explorées, dont les exemples ci‐dessous (ne pas lire les mots barrés) :

Afin de mieux visualiser les réponses au concours, merci de ne pas trop remplir les commentaires avec d’autres sujets.

Allez, que le meilleur gagne !  ᕕ(ᐛ)ᕗ

  • # malloc(u); // on n'a pas fait mieux en 30 ans

    Posté par (page perso) . Évalué à 7.

    <html><body><li>il manque une balise</li></ul></body><html>
    

    Rien n'est de moi, mais ce sont les plus drôles :)

  • # goujat.c

    Posté par (page perso) . Évalué à 7. Dernière modification le 02/01/17 à 19:45.

    short main/*story*/(int couple, char **arg/*uing*/) {
      extern girl;
      volatile eyeshot;
      register move;
      float silence;
      static angry;
    
      long ever;
      for(ever;;++arg)
      break;
      char *says="goto hell";
      char *adds="short *D*";
      union broken;
      void alone(){}
      return (long long)&alone;
    }
    /*
    $ gcc --std=c89 goujat.c 
    $ ./a.out ; echo $?
    144 # 12*12 as "éh une grosse!"
    */
    • [^] # Re: goujat.c

      Posté par (page perso) . Évalué à 1.

      N’oubliez pas de mentionner la licence libre de votre œuvre de l’esprit.
      Un moyen simple et de rajouter cette licence libre dans sa signature.
      Cela permet, d’une pierre deux coups, de libérer tous vos commentaires \o/
      (pourquoi interdire la réutilisation de ses commentaires ?)

      Commentaire sous licence Creative Commons Zero CC0 1.0 Universal (Public Domain Dedication)

  • # JSON

    Posté par . Évalué à 9.

    [
        "a1"
    ]

    JSON a1 string dans l'array.

  • # Utilisation d'une variable dans un Makefile pour un programme en C

    Posté par . Évalué à 2.

    Vu récemment sur une liste de discussion:

    $ cat > Makefile <<'EOF'
    ANSWER = 42
    CFLAGS = -DANSWER=$(ANSWER) -O -Wall -Wextra
    
    all: answer
    EOF
    $ cat > answer.c <<EOF
    #include <stdio.h>
    
    int main(void)
    {
        printf("The answer is %d.\n", ANSWER);
        return 0;
    }
    EOF
    $ make
    cc -DANSWER=42 -O -Wall -Wextra    answer.c   -o answer

    Ce qui donne:

    $ ./answer
    The answer is 42.

    Et sinon, j'aime toujours autant l'histoire de l'admin-sys qui modifie une variable d'environnement et PATH ! Le chemin !
    (Tiré du (très bon) Geekscottes.)

  • # Bring out the gimp

    Posté par (page perso) . Évalué à 9.

    Allez, assumons un des plus gros trolls autour de GIMP, son nom! Pour donner un peu de référence à ceux qui ne savent pas, le terme "Gimp" a été popularisé par Pulp Fiction qui en a fait le nom d'un perso sado-maso. Depuis c'est un sujet récurrent, une fois tous les X mois, un anglophone viendra se plaindre du terme et nous demandera de changer le nom du programme.
    Ce "programme-blague" ci-dessous est une référence à la fameuse scène, et en particulier à la citation par un personnage: "Bring out the Gimp".

    Note: ce programme crée un fichier appelé "Pulp Fiction" dans votre répertoire courant (avec aucun but autre qu'utiliser des mots de fonction marrant!). Donc ne pas faire tourner ce code si par pur hasard, vous avez déjà un fichier de ce nom! Le code marche mais n'est pas fait pour être utile! :-)
    C'est du CC 0.

    # open Unix;;
    # let quote = fun
        f -> let box = open_out_bin f in
             seek_out box 0b1;
             ignore (sleep 0x0); 
             try raise (Failure "") with
                 | _ -> output_string box "Bring out the gimp!";
                        close_out box
    in quote "Pulp Fiction";;

    Film d'animation libre en CC by-sa/Art Libre, fait avec GIMP et autre logiciels libres: ZeMarmot [ http://film.zemarmot.net ]

    • [^] # Re: Bring out the gimp

      Posté par (page perso) . Évalué à 4.

      T'es vache de nous sortir un langage de chameaux !

      • [^] # Re: Bring out the gimp

        Posté par (page perso) . Évalué à 3. Dernière modification le 05/01/17 à 14:42.

        ;-)
        Ocaml est un de mes vieux amis, même si je n'ai plus rien écrit dans ce langage depuis pas mal d'années. Alors c'est l'occasion de le ressortir. :P

        Sinon dans mon code précédent, je rajouterais bien un petit smiley du gimp dans le raise (Failure ""):

                 try raise (Failure "(o_o)") with

        Ça ressemble, non? Les 2 gros yeux globuleux et la fermeture éclair… :-D
        Bon par contre, si vous voulez voter pour mon code, votez sur l'original plutôt! Pour pas perdre mes votes précédents! :P

        Film d'animation libre en CC by-sa/Art Libre, fait avec GIMP et autre logiciels libres: ZeMarmot [ http://film.zemarmot.net ]

        • [^] # Re: Bring out the gimp

          Posté par (page perso) . Évalué à 3.

          la fermeture éclair

          ?! Je ne suis pas un super spécialiste des smileys, mais je ne vois vraiment pas de fermeture Éclair.

          • [^] # Re: Bring out the gimp

            Posté par (page perso) . Évalué à 2. Dernière modification le 05/01/17 à 18:19.

            Le trait droit pour la bouche. Ensuite, je suis pas un spécialiste des smileys du tout du tout non plus. On peut sûrement faire mieux… :-)
            Tiens pour me faire des points, parce que les chats ça fait toujours augmenter ses scores sur le net, paraît-il.

            GIMP cat

            (ma source, un tweet de Patrick David, aucune idée s'il en est l'auteur)

            Film d'animation libre en CC by-sa/Art Libre, fait avec GIMP et autre logiciels libres: ZeMarmot [ http://film.zemarmot.net ]

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.