As-tu tué le Jabberwock?

37

Votre tâche consiste à sortir la chaîne exacte

The Jabberwocky

sans prendre d'entrée. Les règles normales d'entrée et de sortie s'appliquent, de sorte que les fonctions et les programmes sont autorisés.

Bien sûr, il y a un piège, ce ne serait pas amusant sans un piège. Votre programme, une fois dépourvu de caractères non alphabétiques, doit commencer le poème The Jabberwocky (insensible à la casse). Pour démarrer le poème, il doit s'agir d'une sous-chaîne continue du poème commençant au début. La chaîne vide va bien (même si vous ne réussirez probablement pas très bien).

Voici le texte pour référence:

twasbrilligandtheslithytovesdidgyreandgimbleinthewabeallmimsyweretheborogovesandthemomerathsoutgrabebewarethejabberwockmysonthejawsthatbitetheclawsthatcatchbewarethejubjubbirdandshunthefrumiousbandersnatchhetookhisvorpalswordinhandlongtimethemanxomefoehesoughtsorestedhebythetumtumtreeandstoodawhileinthoughtandasinuffishthoughthestoodthejabberwockwitheyesofflamecamewhifflingthroughthetulgeywoodandburbledasitcameonetwoonetwoandthroughandthroughthevorpalbladewentsnickersnackheleftitdeadandwithitsheadhewentgalumphingbackandhastthouslainthejabberwockcometomyarmsmybeamishboyofrabjousdaycalloohcallayhechortledinhisjoytwasbrilligandtheslithytovesdidgyreandgimbleinthewabeallmimsyweretheborogovesandthemomerathsoutgrabe

Voici un programme que vous pouvez utiliser pour tester cette propriété.

Si vous êtes à court de poèmes, vous ne pouvez utiliser aucun caractère alphabétique supplémentaire.

Les caractères alphabétiques sont des caractères a- zet A- Zvoici la liste complète:

ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz

Notation

Votre programme sera noté en fonction du nombre d'octets non alphabétiques utilisés, le nombre étant meilleur.

Voici un programme Haskell qui apporte des réponses. (Cela suppose que les entrées sont valides)

Exemple de programme

Le programme suivant serait valide:

twas&*brilliga77812nd Thesli thyt Oves didgy reand Gim bleinth ewab eal lmims ywe""""""""
ret h eb or o g o ve sa n dthemomerAthsoutgrabebewaretheJABBERWOCKmysonthe)(*)()((*98980908(()*(jawsthatbit

Lorsqu'il est réduit aux caractères alphabétiques, il est:

twasbrilligandTheslithytOvesdidgyreandGimbleinthewabeallmimsyweretheb orogovesandthemomerAthsoutgrabebewaretheJABBERWOCKmysonthejawsthatbit

Qui correspond au premier bit du poème (insensible à la casse).

Ce programme marquerait 59 car il contient les caractères non alphabétiques suivants:

&*77812           """"""""
          )(*)()((*98980908(()*(
Assistant de blé
la source
6
Qu'entendez-vous par "Démarrer le poème"?
Pavel
7
C'est trivial à faire dans des langues sans lettres.
NoOneIsHere
5
Le pédant en moi se sent obligé de vous rappeler que le nom du poème est Jabberwocky(sans article), alors que le nom de la bête est the Jabberwock(sans -y ). Bien sûr, vous ne pouvez pas modifier la sortie requise maintenant, mais ...
DLosc
6
Pourquoi autant de votes à fermer comme peu clairs? Le "Voici un programme que vous pouvez utiliser pour tester cette propriété." partie détermine complètement et sans ambiguïté les critères valides.
user202729
3
@JonathanAllan Leur incapacité à comprendre la question ne signifie pas nécessairement que la question n'est pas claire ...
user202729 Le

Réponses:

42

oOo CODE , score 0

Merci à Dennis d'avoir joué le code Brainfuck.

TwASbRIlLIgAnDthEsliTHyTOvEsdiDgyreaNdgImbleinthEwaBeaLlmimSywEreThEBoroGoveSAndTheMOmERaTHSoutGRabEbeWArEthEjaBbeRWockMYsONtHEJawsTHaTBiTEThecLawSthATcaTChBeWAReTHeJuBJuBBiRDAndsHUNtHeFRuMIoUSbANdERSnatchheTooKHisvORpaLswORdinhAndLonGtiMetHEmanXomEFoEHeSOUg

Essayez-le en ligne!

J'ai de mauvaises nouvelles pour ce défi ... :(

oOo CODE est juste un encodage binaire de brainfuck qui utilise le cas d'une lettre pour chaque bit. Donc oui, puisque le poème est assez long (ou que le texte est assez court) pour couvrir un programme Brainfuck qui imprime The Jabberwocky(sans réellement essayer de jouer au golf), cela devient une réponse optimale triviale.

Martin Ender
la source
3
Golfé.
Dennis
@JoKing Essayez-le en ligne! (généré avec BF-Crunch )
Dennis
"mauvaise nouvelle" ... oui, c'est mauvais. Je prédis que Unary obtiendra 0 octet , la règle a changé et il y a toujours 0 envoi.
user202729
5
Je ne pense pas que ce soit une mauvaise nouvelle du tout. Cela n'a aucune incidence sur le plaisir de jouer au golf dans d'autres langues.
Lynn
22

C, note  104   79  74

Merci à @gastropner d'avoir abaissé le score à 79 et merci à @ wizzwizz4 de l'avoir abaissé à 74!

*t,w;a(s,b,rilligand){*(t//he
=s++)="lithytovesdidgyreandgimbleinthewabeallmimsyweretheborogovesandthemomerathsoutgrabebewareThe Jabberwock\0mysonthejawsthat"[b++]?//i
:121;*t>12e1?*++t//hecl
=0:a//wsthatcatchbewarethejubjubbirdandshunthefrumiou
(s,b);}an;der(s,n){a(//tchhetookhi
s,88);}

Essayez-le en ligne!

Steadybox
la source
Score 79
gastropner
2
Ne serait pas //abcdefgh\n1 moins de caractères que /*abcdefgh*/?
wizzwizz4
@ wizzwizz4 Oui, ce serait le cas. Merci!
Steadybox
20

Fission 2 , score 3

twasbrilligandtheslithytovesdidgyreandgimbleinthewabeallmimsyweretheborogovesandthemomerathsoutgrabebewaRe"The Jabberwock"mysonthejawsthatbitetheclawsthatcatchbewarethejubjubbirdandshunthefrumiousbandersnatchhetookhisvorpalswordinhandlongtimethemanxomefoehesoughtsorestedhebythetumtumtreeandstoodawhileinthoughtandasinuffishthoughthestoodthejabberwockwitheyesofflamecamewhifflingthroughthetulgeywoodandburbledasitcameonetwoonetwoandthroughandthroughthevorpalbladewentsnickersnackheleftitdeadandwithitsheadhewentgalumphingbackandhastthouslainthejabberwockcometomyarmsmybeamishboyO

Essayez-le en ligne!

Explication

Nous pouvons ignorer la plupart des lettres minuscules, elles fixent simplement l'énergie d'un atome à leur point de code.

...Re"The Jabberwock"my...oyO

La majuscule Rest le point d'entrée du programme, car il crée un atome allant bien. Comme je le disais, on peut ignorer le e. "Bascule ensuite en mode chaîne, qui affiche simplement tous les caractères rencontrés sur STDOUT, ce qui nous en donne The Jabberwock. Cela ne laisse que le y. Nous pourrions utiliser le ycontenu à venir immédiatement y, mais nous devrions alors gaspiller au moins un octet autre que lettre pour l’imprimer ( !) et éventuellement un autre pour mettre fin au programme.

Au lieu de cela, nous attendons patiemment de yse présenter immédiatement avant odans le poème. Parce que cela nous permet d'utiliser Oce qui imprime le caractère et détruit l'atome, terminant le programme. De cette manière, les seuls caractères autres que des lettres dont nous avons besoin sont l’espace et les deux guillemets.

Martin Ender
la source
Très très impressionnant.
Weijun Zhou
14

Alice , score 7

"T/was"bri@lligandtheslithytovesdidgyreandgimbleinthewabeallmimsywe
rethe borogovesandthemomerathsoutgrabebewarethejabberwockmysonthejawsthatbitetheclawsthatcatchbewarethejubjubbirdandshunthefrumiousbandersnatchhetookhisvorpalswordinhandlongtimethemanxomefoehesoughtsorestedhebythetumtumtreeandstoodawhileinthoughtandasinuffishthoughthestoodthejabberwockwitheyesofflamecamewhifflingthroughthetulgeywoodandburbledasitcameonetwoonetwoandthroughandthroughthevorpalbl
adewentsn

Essayez-le en ligne!

Le /fait que l'IP se déplace en diagonale et rebondisse sur les bords, de sorte que les instructions réellement exécutées le soient "The "ono@. La ncommande (en mode ordinal) pousse la chaîne "Jabberwocky" si le haut de la pile est vide et oaffiche le haut de la pile.

Nitrodon
la source
1
Très belle réponse!
Jonathan Allan
3
Bon outil pour le travail.
Robert Fraser
Bien, j'ai essayé plusieurs choses mais je n'ai trouvé aucune mise en page qui ait marqué aussi bien.
Martin Ender
13

Gelée , score  6  4

twasbrilligandtheslithytovesdidgyreandgimbleinthewabeallmimsyweretheborogovesandthemomerathSOUTGRABEBEWARE“The Jabberwock”m”y

Un programme complet imprimant le résultat
(en tant que lien monadique, il est imprimé The Jabberwockcomme un effet secondaire et renvoie le caractère y)

Insère les caractères “ ””dans un préfixe du poème qui a changé la casse.

Cela fonctionne parce que:

  1. Le dernier havant SOUTGRABEBEWARE“The Jabberwock”m”yest (du moins au moment de l’écriture!) Un atome indéfini, ce qui en fait un nouveau lien qui prend l’entrée par défaut de 0et exécute des fonctions monadiques SOUTGRABEBEWAREqui donnent 1(voir ci-dessous).

  2. 1“The Jabberwock”meffectue ensuite m, le découpage modulo, "The Jabberwock"avec une taille de tranche de 1, cédant "The Jabberwock".

  3. La fin ”yétant une nouvelle chaîne constante principale, Jelly imprime cette liste de caractères puis renvoie le caractère y. Puisqu'il s'agit maintenant de la fin du programme, celle-ci est ensuite imprimée.

 implicit input = 0
S sum             0
O cast to ordinal 0
U upend           [0]
T truthy indices  []
G group           []
R range           []
A absolute value  []
B to-binary       []
E all-equal?      1
B to-binary       [1]
E all-equal?      1
W wrap            [1]
A absolute value  [1]
R range           [[1]]
E all-equal?      1

Précédent 6 byter:

twasbrilligandtheslithytovesdidgyreandgimbleinthewabeallmimsyweretheborogovesandthemomerathsoutgrabebeware
“The Jabberwock”m1“y

Essayez-le en ligne!

Les six caractères non-poèmes constituent un saut de ligne “ ”1“.


Alternative 6s:

“T“wasbrilligandtheslithytovesdidgyreandgimbleinthewabeallmimsyweretheborogovesandthemomerathsoutgrabebewaret“he Jabberwock”m2“y

twasbrilligandtheslithytovesdidgyreandgimbleinthewabeallmimsyweretheborogovesandthemomerathsoutgrabebewaret
“The Jabberwockmy”ṪṭṖ
Jonathan Allan
la source
Le premier programme n'est-il pas valide sans m1“y? Il imprime toujours The Jabberwocket commence par un sous-ensemble du poème
dylnan
1
Non, le m1“y(ou il pourrait être m1”y) est nécessaire parce que nous devons imprimer The Jabberwocky, pas The Jabberwock.
Jonathan Allan
7

Fusain , score 3

twasbrilligandtheslithytovesdidgyreandgimbleinthewabeallmimsyweretheborogovesandthemomerathsoutgrabebeware⎚The Jabberwock⌈my

Essayez-le en ligne!

Inséré les trois personnages: ⎚ ⌈

... ça marche aussi avec tout le poème .

Comment?

twas ... ware⎚The Jabberwock⌈my - no input
twas ... ware                    - print this text     >  twasbrilligandtheslithytovesdidgyreandgimbleinthewabeallmimsyweretheborogovesandthemomerathsoutgrabebeware
             ⎚                  - clear the screen    >
               The Jabberwock    - print this text     > The Jabberwock
                             ⌈   - (print) maximum of:
                              my -   this text         > The Jabberwocky
Jonathan Allan
la source
5

Ruby ( -p), Score 12

$_=#twasbrilligandtheslithytovesdidgyreandgimbleinthewabeallmimsyweretheborogovesandthemomerathsoutgrabebeware
'The Jabberwock'+#m
?y

Essayez-le en ligne!

Abuser de tous les commentaires!

Avec le -pdrapeau, ruby ​​imprimera tout ce qui est stocké dans $_. Nécessite une seule ligne de n'importe quelle entrée.

Pavel
la source
Je ne pense pas que vous puissiez utiliser -pici, à cause de la ligne de saisie requise. "Votre tâche consiste à sortir la chaîne exacte The Jabberwockysans prendre d’entrée."
benj2240
@ benj2240 -pest un indicateur de ligne de commande, pas une entrée.
M. Xcoder
@Pavel je vois, merci
benj2240
5

Fusain , score: 5 4

twasbrilligandtheslithytovesdidgyreandgimbleinthewabeallmimsyweretheborogovesandthemomerathsoutgrabebeware⎚The Jabberwock¿m¦y

Essayez-le en ligne! Edit: 1 octet enregistré grâce à @ ASCII uniquement. Explication: Se traduit par le code détaillé suivant:

Print("twas...beware");
Clear();
Print("The Jabberwock");
if ("m") Print("y");
Neil
la source
Poème entier: P
ASCII uniquement
@ JonathanAllan Fixé!
Neil
4

Foo , score 5

twasbrilligandtheslithytovesdidgyreandgimbleinthewabeallmimsyweretheborogovesandthemomerathsoutgrabebeware"The Jabberwock"m"y"

Essayez-le en ligne!

Steadybox
la source
4

> <> , Note: 13 12

\twasbrilligandtheslithytovesdidgyreandgimbleinthewabeallmimsyweretheborogovesandthemomerathsoutgrabebeware
\"The Jabberwockmy"$~\sonthejawsthatbitetheclawsthatcatchbewarethejubjubbirdandshunthefrumiousbandersnatchhetookhisvorpalswordinhandlongtimethemanxomefoehesoughtsorestedhebythetumtumtreeandstoodawhileinthoughtandasinuffishthoughthestoodthejabberwockwitheyeso
fflamecamewhifflingth>ro<

Essayez-le en ligne!

Vérification et notation .

Renvoie immédiatement vers la deuxième ligne, ce qui pousse "The Jabberwockmy" en sens inverse de la pile. $~saute l'excédent met >ro<imprime la pile entière en l'inversant au préalable.

Jo King
la source
3

Retina 0.8.2 , score: 21 20 18 16 13 8 6

|twasbrilligandtheslithytovesdidgyreandgimbleinthewabeallmimsyweretheborogovesandthemomerathsoutgrabebeware
The Jabberwock0$*my

Essayez-le en ligne! Edit: Score réduit de 2 grâce à @MartinEnder.

Neil
la source
Vous pouvez marquer 6 comme ceci: tio.run/… puis 5 en passant à Retina 1.0 (et en utilisant à la *place de $*).
Martin Ender
3

C, note 23

twasbrilligandtheslithytovesdidgyreandgimble(int**h){//ewabeallmimsyweretheborogovesandthemomerat
*h//soutgrabebeware
="The Jabberwock"//m
"y";}

Essayez-le en ligne!

Thomas Padron-McCarthy
la source
2

Yabasic , 13

Merci pour la réponse de Ruby à Pavel!

#twasbrilligandtheslithytovesdidgyreandgimbleinthewabeallmimsyweretheborogovesandthemomerathsoutgrabebeware
?"The Jabberwock";//m
?"y"

Essayez-le en ligne!

Weijun Zhou
la source
Je compte un score de 20, je pense que vous avez oublié de compter les nouvelles lignes.
Pavel
Oui, il y a aussi des problèmes avec des tas d'autres réponses.
Weijun Zhou
Juste une remarque: Yabasic est disponible pour utilisation sur Try It Online, vous devriez envisager d’ajouter un lien vers votre solution à TIO tel que celui-ci
Taylor Scott
@TaylorScott Comment puis-je ne pas remarquer cela! Fixé.
Weijun Zhou
Je pense que vous avez un extra "le" à la fin de la première ligne.
12Me21
2

VBA, score 5

Exécuter dans la fenêtre immédiate:

?twasbrilligandtheslithytovesdidgyreandgimbleinthewabeallmimsyweretheborogovesandthemomerathsoutgrabebeware"The Jabberwock"m"y

Comment ça marche:

? - Ceci affiche le résultat sous forme de chaîne

-

twasbrilligandtheslithytovesdidgyreandgimbleinthewabeallmimsyweretheborogovesandthemomerathsoutgrabebeware - sans déclaration explicite, ceci est traité comme une chaîne vide

-

"The Jabberwock"- Chaîne. Lorsque vous mettez 2 variables / chaînes l'une à côté de l'autre, VBA les concaténera automatiquement. (2 chaînes non variables nécessiteraient un espace pour ne pas ajouter de guillemets)

-

m - Une autre chaîne vide implicite, automatiquement concaténée

-

"y- Une autre ficelle. Si elle est laissée ouverte, la fenêtre Immediate fermera automatiquement cette dernière lorsqu'elle atteindra la fin de la ligne - à nouveau, automatiquement concaténée

-

1 point d'interrogation, 1 espace et 3 doubles guillemets. VBA voit cela comme ?"" & "The Jabberwock" & "" & "y"ou?"The Jabberwocky"

Chronocide
la source
2

Haskell , score 12

twasbrilligandtheslithytovesdidgyreandgimbleinthewabeallmimsyweretheborogovesandthemomerathsoutgrabebeware="The Jabberwock"++{-m-}"y"

Essayez-le en ligne!

Définit une fonction sans argument twasbrilligandtheslithytovesdidgyreandgimbleinthewabeallmimsyweretheborogovesandthemomerathsoutgrabebeware :: Stringdont la sortie est "The Jabberwocky".

Lynn
la source
2

Java (OpenJDK 9) , score 11

twasbrilligandtheslithytovesdidgyreandgimbleinthewabeallmimsyweretheborogovesandthemomerathsoutgrabebeware->"The Jabberwock"+//m
"y"

Essayez-le en ligne!

Crédits

Olivier Grégoire
la source
1
-2 marquer en changeant ()de t(inutilisé Voidparamètre null), et en retirant le premier tdu commentaire.
Kevin Cruijssen
2
@KevinCruijssen Merci pour vos idées. :-) Cependant, en ce qui concerne le <s>16</s> 14je préfère, comme toujours sur tout réseau StackExchange pour fournir une réponse finale. Les modifications elles-mêmes sont répertoriées dans la page de révision , ce qui permet à tout le monde de voir facilement les modifications effectives et la façon dont la réponse a évolué au fil du temps, plutôt que de mettre toutes les informations passées et actuelles dans un seul et même poste illisible.
Olivier Grégoire
Ah ok, d'accord par moi. :) Le montage était principalement destiné à fixer «octets» à «score».
Kevin Cruijssen
1
@KevinCruijssen En effet, j'ai vu votre changement dans les crédits et ils étaient les bienvenus. Dans mon commentaire précédent, je ne parlais que du titre. J'ai même créé une méta-publication sur ce sujet. ;-)
Olivier Grégoire
1
Maintenant que vous avez supprimé le commentaire sur la première ligne, vous n'avez plus besoin du saut de ligne.
Wheat Wizard
2

PowerShell , Score: 19 10

#twasbrilligandTheslithytovesdidgyreandgimbleinthewabeallmimsyweretheborogovesandthemomerathsoutgrabebewarethe
'The Jabberwock'+#m
'y'

Essayez-le en ligne!

Réponse Ruby du port de Pavel . Merci à Jo King pour -9 points.

Les chaînes sont +concaténées ensemble. Une fois les commentaires supprimés et le code analysé, PowerShell voit ceci 'The Jabberwock'+'y'. Cette chaîne est laissée sur le pipeline et la sortie est implicite.

AdmBorkBork
la source
J'étais sur le point de poster cette réponse exacte: P
Pavel
Ne pouvez-vous pas combiner Theet Jabberwocken une seule chaîne? Essayez-le en ligne!
Jo King
@JoKing En effet, merci. C'est drôle comment tu te débrouilles sans le caractère de continuation de ligne. Je me demande quand cette règle d'analyse a changé ...
AdmBorkBork
1

Gelée , score: 8

“ĠȥṘ®ṖȤ»

Essayez-le en ligne!

Compresse simplement la chaîne et est une chaîne vide lorsque tous les caractères non alphabétiques sont supprimés. De manière ennuyeuse, la forme comprimée la plus courte “81Iȯd»comporte des caractères alphabétiques, qui ne sont tni l'un ni l'autre.w

caird coinheringaahing
la source
1

05AB1E , score 14

"twasbrilligand""The ""slithytovesdidgyreandgimbleinthewabeallmimsyweretheborogovesandthemomerathsoutgrabebewarethe"Š"Jabberwock"+"my"Š

Essayez-le en ligne!

M. Xcoder
la source
1

Toile , marquer 5

twasbrilligandtheslithytovesdidgyreandgimbleinthewabeallmimsyweretheborogovesandthemomerathsoutgrabebeware∙The Jabberwockpm∙yp

Essayez-le ici!

dzaima
la source
1

SOGL V0.12 , score 9

twasbrilligandtheslithytovesdidgyreandgimbleinthewabeallmimsyweretheborogovesandthemomerathsoutgrabebeware”The” Jabberwock”:⁄m+ y+

Essayez-le ici!

dzaima
la source
1

Pip , score 5

twasbrilligandtheslithytovesdidgyreandgimbleinthewabeallmimsyweretheborogovesandthemomerathsoutgrabebewarethejabberwockmysonthejawsthatbitetheclawsthatcatchbewarethejubjubbirdandshunthefrumiousbandersnatchhetookhisvorpalswordinhandlongtimethemanxomefoehesoughtsorestedhebythetumtumtreeandstoodawhileinthoughtandasinuffishthoughthestOOD|"The Jabberwock"witheyesofflamecamewhifflingthroughthetulge'y

Essayez-le en ligne!

Heureusement, les lettres minuscules dans Pip sont toutes des variables, qui sont des no-ops dans les expressions elles-mêmes. La partie intéressante du code:

OOD|"The Jabberwock"

Le scanner se brise OODcomme Osuit par OD. ODest une variable non définie, évaluée comme nulle (falsey); nous avons ensuite logique - ou ceci avec "The Jabberwock", et le Osort sans nouvelle ligne.

'y

Chaîne à caractère unique y. Comme c'est la dernière expression du programme, elle est imprimée.

DLosc
la source
1

SmileBASIC, score 10

@twasbrilligandtheslithytovesdidgyreandgimbleinthewabeallmimsyweretheborogovesandthemomerathsoutgrabebeware?"The Jabberwock";
@m?"y

Cela a été assez directement tiré de la réponse de Yabasic, et comme SB est une meilleure langue, nous pouvons la raccourcir en utilisant des étiquettes plutôt que des commentaires, ce qui élimine la nécessité de certains sauts de ligne.

Il existe également cette solution alternative, pour la même taille:

@twasbrillig ... ?"The Jabberwock"+@my[2]

Une étiquette dans une expression est traitée comme une chaîne. ( @my == "@my"), si vous prenez le caractère 2, vous obtenez "y".

12Me21
la source
1

C (gcc) , note 58

Le fait utile que les // commentaires de style + newlines sont moins chers que les anciens est directement lié au commentaire de @ wizzwizz4 pour la réponse de @ Steadybox .

L'indicateur -m32 est requis.

Le nom long de la fonction à appeler peut amener certains à être d'humeur délirante, tandis que d'autres pourraient à juste titre trouver de telles objections mimsy; à la fin, nous devons tous écouter le chant de la sirène de faibles scores.

twasbrilligan;d(t,h,e,slithytovesdidgyreandgimble)int*h,*e;//wabeallmimsywere
{t--?*h++=*e++,//borogovesan
d(t,h,e):0;}momerathsoutgrabebewar;*e="The Jabberwock\171";mysonthejawsthatbitetheclawsthatcatchbewarethejubjubbirdandshunthefrumiousbandersnatchhetookhisvorpalswordinhandlongtimethemanxomefoehesoug(h,tsoreste){d(4,h,e);}

Essayez-le en ligne!

gastropner
la source
1

Lot, score 15 11

:twasbrilligandtheslithytovesdidgyreandgimbleinthewabeallmimsyweretheborogovesandthemomerathsoutgrabebewarethejabberwockmysonthejawsthatbiteth
@ec%lawsthatcatchbewarethejubjubbirdandshunthefrumiousbandersnatchhetookhisvorpalswordinhandlongtimethemanxomefoehesoughtsorestedhebythetumtumtreeandstoodawhileinthoughtandasinuffisht%ho%ughthestood% The Jabberwock%withe%y

Fondamentalement juste echo The Jabberwockyavec des variables et des étiquettes inutilisées.

Ancienne version (score 24):

:twasbrilligandtheslithytovesdidgyreandgimbleinthewabeallmimsyweretheborogovesandthemomerathsoutgrabebewarethejabberwockmysonthejawsthatbitetheclawsthatcatchbewarethejubjubbirdandshunthefrumiousbandersnatchhetookhisvorpalswordinhandlongtimethemanxomefoehesoughtsorestedhebythetumtumtreeandstoodawhileinthoughtandasinuffishthoughthestoodthejabberwockwitheyesofflamecamewh
@if %1%fl%i==%ngthroughthetulgeywoodandburbledasitcameonetwoonetwoandthroughandthroughthevorpalbladewentsnickersnackheleftitdeadandwithitsheadhewentgalumphingbackandhastthousla%i n The Jabberwock%cometom%y
:armsmybeamishboyofrabjousdaycalloohcallayh
@echo %*

Nécessite que le code soit enregistré dans un fichier nommé n.batet exécuté à partir du même répertoire.

Version alternative qui peut avoir n'importe quel nom (score 27):

:twasbrilligandtheslithytovesdidgyreandgimbleinthewabeallmimsyweretheborogovesandthemomerathsoutgrabebewarethejabberwockmysonthejawsthatbitetheclawsthatcatchbewarethejubjubbirdandshunthefrumiousbandersnatchhetookhisvorpalswordinhandlongtimethemanxomefoehesoughtsorestedhebythetumtumtreeandstoodawhileinthoughtandasinuffishthoughthestoodthejabberwockwitheyesofflamecamewh
@if %1%fl%i==%ngthroughthetulgeywoodandburbledasitcameonetwoonetwoandthroughandthroughthevorpalbladewentsnickersnackheleftitdeadandwithitsheadhewentgalumphingbackandhastthousla%i %~n0 The Jabberwock%cometom%y
:armsmybeamishboyofrabjousdaycalloohcallayh
@echo %*

Explication (avec les variables supprimées):

:twas...                         Label (No labels were used, no goto in the poem)
@if %1i==i %~n0 The Jabberwocky  If no command line arguments, run this batch file again
:arms...                          with the arguments 'The Jabberwocky'
@echo %*                         Echo all arguments
utilisateur2033427
la source
1

Perl 5, sous-programme, score 11

{twasbrilligandtheslithytovesdidgyreandgimbleinthewabeallmimsyweretheborogovesandthemomerathsoutgrabebeware;'The Jabberwock'.~'X'}

mais avec le caractère \ x86 ( v134) au lieu du X.

(perlsub dit "La signature fait partie du corps d'un sous-programme. Normalement, le corps d'un sous-programme est simplement un bloc de code calé.")

msh210
la source
Est-ce que cela imprime le y?
Jo King
@JoKing oups! Maintenant c'est fait; Merci.
msh210
1

Ruby , 9 octets non alphabétiques

twasbrilligandtheslithytovesdidgyreandgimbleinthewabeallmimsyweretheborogovesandthemomerathsoutgrabebewarethejabberwockmysonthejawsthatbitetheclawsthatcatchbewarethejubjubbirdandshunthefrumiousbandersnatchhetookhisvor=p alswordinhandlongtimethemanxomefoehesoughtsorestedhebythetumtumtreeandstoodawhileinthoughtandasinuffishthoughthestood="The Jabberwock"+withe=?y

Essayez-le en ligne!

Version golfée (pour la lisibilité):

x=p z="The Jabberwock"+w=?y

Utilise quelques variables longues et inutiles. En ruby, vous pouvez placer whatever_you_want=une expression avant une expression, qui retournera toujours cette expression, avec pour seul effet secondaire de créer une variable au nom étrange.

MegaTom
la source
1

Brainfuck auto-modificateur , score 16

twasbrilligandtheslithytovesdidgyreandgimbleinthewabeallmimsyweretheborogovesandthemomerathsoutgrabebeware␀The Jabberwock␀my<[<<]>[.>]>>.

Essayez-le en ligne!

Explication

Initialement, la bande est configurée comme suit:

  T h e  J a b b e r w o c k  m y < [ < < ] > [ . > ] > > .   

<[<<]

T>[.>]y>>.

ბიმო
la source
0

Fission , note 6

twasbrilligandtheslithytovesdidgyreandgimbleinthewabeallmimsyweretheborogovesandthemomerathsoutgrabebewaRe"The Jabberwock"m"y";

Essayez-le en ligne!

Steadybox
la source