Un JAPH est une grande tradition de faire un programme qui imprime "Juste un autre pirate Perl". Nous avons déjà une question à propos de JAPH sur ce site mais ils semblent plus soucieux de cacher le texte, mais JAPH a toujours été plus soucieux de cacher la méthode par laquelle il fait ce qu'il fait. Par conséquent, je vous mets au défi de montrer les fonctionnalités intéressantes de votre langue préférée, et ne vous inquiétez pas trop de cacher le texte (sauf si vous le souhaitez).
Voici le mien, en Perl, qui ne devrait pas être trop difficile à comprendre pour un vélociraptor expérimenté, mais qui peut être intéressant pour d'autres.
(*STORE,*TIESCALAR)=map{eval"sub{$_}"}qw'map{print&&sleep$|}split//,pop bless\$|++';tie$t,main;$t="Just another Perl hacker,\n"
Jugé subjectivement sur les votes de vous, voyons quelques esprits!
obfuscation
popularity-contest
Joel Berger
la source
la source
_2=($_1/*/*); ${_2[34]} -${_2[34]:5:1}'\110\145\154\154\157\54\40\127\157\162\154\144\41'
Réponses:
C
Doit être compilé en 32 bits. Sur les machines 64 bits, utilisez
gcc -m32
ou autre.Avertissement: pas mon idée. Je l'ai trouvé il y a des années caché dans un morceau de code. Sérieusement. Le leur était encore mieux, j'ai oublié plusieurs petits détails. Mais l'essentiel est là.
Quand vous le verrez, vous sh * t briques.
la source
/*
est commenté! facepalm :-PMathematica:
la source
Dard
Edit: moins ennuyeux setter, moins ennuyeux getter.
J'ai étudié cette langue pendant une journée, donc je pense que d'autres personnes peuvent penser que c'est un gâchis d'enfant ... :(
la source
PRNG
C'est en C, mais cela montre en fait que vous pouvez faire des choses intéressantes en utilisant des PRNG et des sorties
Just another PRNG hacker
:L'utilisation du PRNG intégré (srand, rand) serait également possible, mais moins portable.
la source
C
la source
Python
la source
Javascript
Dans mon code, le texte JAJSH a été chiffré en l'inversant, non seulement une fois, mais deux fois !! Ha! Peux-tu le trouver?
la source
Haskell
J'ai fait celui-ci avec de l'aide .
Et juste pour le plaisir:
la source
Javascript
Exécuter dans la console
la source
Python 2.x (expression unique)
Maintenant, bien que cela soit assez facile à comprendre pour Pythoneers, d'autres pourraient le trouver au moins intéressant. Si vous vous demandez pourquoi il y a tant de lambdas, je voulais avoir un maximum de soulignement, mais une répétition minimale. Qui n'aime pas les soulignés? Ideone
Une version échancrée si vous préférez:
Ceci définit une fonction et l'appelle avec 'Just another Python Hacker'. Maintenant, cela ne devait pas être une fonction, mais je pensais que ce serait plus élégant.
la source
QBasic
Voici mon implémentation dans QBasic. Le programme doit être appelé "JAQBH.BAS" dans ou pour que cela s'exécute correctement, car il lit sa propre source dans le cadre du programme. Et je n'ai trouvé aucun moyen sensé de déterminer le nom du script en cours d'exécution.
la source
Haskell
Amusez-vous avec les transformateurs monades:
la source
Scala
la source
Postscript.
Crée une police personnalisée avec laquelle afficher le texte.
la source
Rubis
Avait deux idées et a fini par les combiner.
la source
Ruby 1.9
Ringard, très dépendant de l'implémentation, mais j'espère que vous le trouverez effrayant.
Modifier: preuve
la source
Python
Mon JAPH en Python
la source
Javascript
la source
Lua / RProgN
Je suis sûr qu'il existe une façon meilleure et plus sournoise de combiner ces deux langues. Se cacher dans les commentaires est tellement galvaudé.
Essayez le Lua Out
Essayez le RProgN Out
la source
Opération Flashpoint scripting language
Enregistrez sous
ofp.sqs
(ou tout autre nom) et appelez avec[] exec "ofp.sqs"
.Production:
la source
Toile
... ce qui devrait fonctionner, mais
╷
sur les chaînes n'a pas encore été implémenté. Hourra pour les projets morts! La version de travail utilise la même logique, mais est un peu ... moins obscurcie.Essayez-le en ligne! (version de travail)
la source
Perl sur OSX 10.7+ (nécessite Xcode)
la source