Ein JAPH ist eine großartige Tradition, ein Programm zu erstellen, das "Just another Perl hacker" druckt. Wir haben bereits eine Frage zu JAPH auf dieser Site, aber sie scheinen mehr damit beschäftigt zu sein, den Text zu verbergen, aber JAPH hat sich immer mehr darum gekümmert, die Methode zu verbergen, mit der es das tut, was es tut. Aus diesem Grund fordere ich Sie auf, die coolen Funktionen Ihrer Lieblingssprache vorzuführen und sich nicht zu viele Gedanken darüber zu machen, den Text zu verbergen (es sei denn, Sie möchten).
Hier ist meine in Perl, die für einen erfahrenen Velociraptor nicht zu schwer zu verstehen sein sollte, aber für andere interessant sein kann.
(*STORE,*TIESCALAR)=map{eval"sub{$_}"}qw'map{print&&sleep$|}split//,pop bless\$|++';tie$t,main;$t="Just another Perl hacker,\n"
Nach Stimmen von euch subjektiv beurteilt, lasst uns ein paar Denkanstöße sehen!
quelle
_2=($_1/*/*); ${_2[34]} -${_2[34]:5:1}'\110\145\154\154\157\54\40\127\157\162\154\144\41'
Antworten:
C
Muss auf 32bit übersetzt werden. Auf 64bit Maschinen verwenden
gcc -m32
oder so.Haftungsausschluss: Nicht meine Idee. Ich habe es vor Jahren in einem Code versteckt gefunden. Ernsthaft. Ihre war noch besser, ich habe einige kleine Details vergessen. Aber das Wesentliche ist da.
Wenn du es siehst, wirst du keine Steine mehr haben.
quelle
/*
ist auskommentiert! facepalm :-PMathematica:
quelle
Pfeil
Edit: weniger langweiliger Setter, weniger langweiliger Getter.
Ich habe diese Sprache einen Tag lang gelernt, also denke ich, dass andere Leute dies als Kinderspiel ansehen ... :(
quelle
PRNG
Es ist in C, aber es zeigt tatsächlich, dass Sie coole Dinge mit PRNGs und Ausgaben machen können
Just another PRNG hacker
:Die Verwendung des eingebauten PRNG (srand, rand) wäre ebenfalls möglich, jedoch weniger portabel.
quelle
C
quelle
Python
quelle
Javascript
In meinem Code wurde JAJSH-Text durch Umkehren verschlüsselt, nicht nur einmal, sondern zweimal !! Ha! Kannst du es finden?
quelle
Haskell
Ich habe das mit etwas Hilfe gemacht .
Und nur zum Spaß:
quelle
JavaScript
Führen Sie in der Konsole aus
quelle
Python 2.x (einzelner Ausdruck)
Nun, während dies für Pythoneer ziemlich einfach herauszufinden ist, könnten andere es zumindest interessant finden. Wenn Sie sich fragen, warum es so viele Lambdas gibt, wollte ich eine maximale Unterstreichung, aber eine minimale Wiederholung. Wer liebt keine Unterstriche? Ideone
Eine eingerückte Version, wenn Sie es vorziehen:
Dies definiert eine Funktion und ruft sie mit 'Just another Python Hacker' auf. Jetzt musste es keine Funktion sein, aber ich dachte, es wäre eleganter.
quelle
QBasic
Hier ist meine Implementierung in QBasic. Das Programm muss in oder "JAQBH.BAS" heißen, damit es ordnungsgemäß ausgeführt werden kann, da es als Teil des Programms seine eigene Quelle liest. Und ich konnte keinen vernünftigen Weg finden, um den Namen des aktuell ausgeführten Skripts zu bestimmen.
quelle
Haskell
Spaß mit Monadentransformatoren:
quelle
Scala
quelle
Nachsatz.
Erstellt eine benutzerdefinierte Schriftart, mit der der Text angezeigt wird.
quelle
Rubin
Hatte zwei Ideen und kombinierte sie schließlich.
quelle
Ruby 1.9
Cheesy, sehr umsetzungsabhängig, aber ich hoffe, Sie finden es gruselig.
Bearbeiten: Beweis
quelle
Python
Mein JAPH in Python
quelle
JavaScript
quelle
Lua / RProgN
Ich bin mir sicher, dass es eine bessere und bessere Möglichkeit gibt, diese beiden Sprachen zu kombinieren. In Kommentaren zu verstecken ist einfach zu überstrapaziert.
Probieren Sie die Lua aus
Probieren Sie das RProgN Out aus
quelle
Operation Flashpoint- Skriptsprache
Speichern unter
ofp.sqs
(oder einem anderen Namen) und rufen Sie mit an[] exec "ofp.sqs"
.Ausgabe:
quelle
Segeltuch
... was funktionieren sollte , aber
╷
auf Strings wurde noch nicht implementiert. Hurra für tote Projekte! Die Arbeitsversion verwendet die gleiche Logik, ist aber etwas weniger verschleiert.Probieren Sie es online! (Arbeitsversion)
quelle
Perl unter OSX 10.7+ (erfordert Xcode)
quelle