Mon père qui était un très bon APLer et qui m'a appris toutes les bases de l'APL (et bien plus), est décédé ce jour-là, il y a cinq ans. En préparation pour 50 ans d'APL , j'ai trouvé cette lettre de brevet (traduite pour la commodité de ceux qui ne lisent pas le danois) pour un logo manuscrit. Cela explique une raison majeure pour qu'APL ne gagne jamais une large base d'utilisateurs - une raison qui s'applique bien sûr à toutes les langues de golf incroyables de cette communauté:
A 3497/77 Req. 29 e août 1977 à 13
Henri Brudzewsky, société de conseil en ingénierie, Mindevej 28, Søborg,
classe 9 , y compris les ordinateurs, en particulier les ordinateurs codés APL,
classe 42: société d'agence de services informatiques, en particulier lors de l'utilisation d'ordinateurs codés APL.
Tâche
Produisez une sortie répétée à l'infini du texte EASIER COMMUNICATION MEANS FASTER CODING MEANS FEWER CODERS MEANS
sans nouvelle ligne. Vous pouvez commencer le texte par EASIER
ou FASTER
ou FEWER
.
Réponses:
05AB1E , 25 octets
Essayez-le en ligne!
Explication:
la source
[
signifie «début de boucle infinie»,‘æƒËRSˆ¾¥ƒŽÁˆ¾¡ŸÂ ‘
c'est une version compressée deEASIER COMMUNICATION MEANS FASTER CODING MEANS FEWER CODERS MEANS
, et?
signifie imprimer sans retour à la ligne.compressed
.SVG (HTML5), 336 octets
Edit: Certaines personnes ont trouvé que la police ne leur convenait pas très bien alors voici une version qui vous permet quelques ajustements de pixels:
la source
PHP, 76 octets
Essayez-le en ligne!
la source
EASI0MMUNICATION1FAST0DING1FEW0DERS1
est traité comme une chaîne"EASI0MMUNICATION1FAST0DING1FEW0DERS1"
. Troisièmement,strtr
attend un tableau associatif (une "carte" ou un "dictionnaire" dans d'autres langues), mais ce code est passé dans un tableau régulier, donc il traite le tableau régulier comme un tableau associatif avec les clés 0 et 1. Enfin, ces entiers 0 et 1 est traité comme des chaînes"0"
et"1"
parce que, vous l'avez deviné, la fonction a besoin de chaînes.Vim 69 octets
la source
HTML, 122 octets.
Désolé, je ne peux pas m'en empêcher.
la source
Python 2 ,
8281 octets-1 octet grâce à Leaky Nun.
Je fais probablement quelque chose de mal, mais il est vraiment tard, alors meh. Notez la virgule de fin.
Essayez-le en ligne!
Une autre solution, 85 octets
Je peux probablement jouer au golf plus loin.
Essayez-le en ligne!
la source
'%sER CO%s MEANS '
et supprimez les espaces des éléments de format, ce sera plus golfique et fonctionnera correctement.Gelée ,
3329 octets4 octets grâce à Erik l'Outgolfer.
Essayez-le en ligne!
la source
“©%5ÐƬwȮh¬Þ6.⁷ḷḊḥṫɠlḶṀġß»
(encore besoin d'utiliserŒu
et;⁶
) 2) Vous pouvez utiliser à laß
place de1¿
.Brachylog , 70 octets
Essayez-le en ligne!
Comment ça marche
la source
HTML / CSS (Firefox uniquement),
179177183176173 octetsCertes, loin des scores les plus bas, je pensais juste que ce serait amusant d'obtenir une répétition infinie en HTML / CSS, sans aucun JS impliqué :)
Journal des modifications:
width:100%
style parright:0
pour économiser 3 octetsla source
repeat no-repeat
ou; background-repeat: repeat-x
, mais j'ai compris comment l'éviter. Il s'avère que le respect des spécifications économise des octets!Python 3 , 87 octets
Essayez-le en ligne!
la source
end=
-il?print
sontprint("",end="\n")
.ER CO
etMEANS
(espace de tête + de fin) économiserait quelques octets, mais apparemment pas.C (gcc) , 92 octets
Essayez-le en ligne!
la source
LOLCODE , 116 octets
Essayez-le en ligne!
la source
IM IN YR ...
etIM OUTTA YR ...
forme une boucle infinie.!
supprime le retour chariot après l'impression.Rubis, 77 octets
l'attribution
" MEANS "
à une variable a enregistré tous les 1 octet :-)la source
JavaScript (ES6),
9087 bytesFunctioning Alternative, 100 bytes
"Functioning" here meaning "won't crash your browser" (for a while, at least)!
la source
document.write`EASIER COMMUNICATION${m=" MEANS "}FASTER CODING${m}FEWER CODERS`+m
is equivalent todocument.write([ 'EASIER COMMUNICATION', 'FASTER CODING', 'FEWER CODERS' ], ' MEANS ', ' MEANS ') + ' MEANS '
, which 1) will convert all arguments to strings and concatenate (printingEASIER COMMUNICATION,FASTER CODING,FEWER CODERS MEANS MEANS
), and 2) won't include the last' MEANS '
anyways since it's outside the function call...Befunge, 73 bytes
Try it online!
la source
">:#,_
withA"k,
and save two bytes. LinkOctave, 86 bytes
Explanation:
This is fairly self-explanatory. The only real "trick" here is to use
while fprintf
. Whenfprintf
is given a return argument, it will return the number of characters printed, and all non-zero numbers are consideredtrue
in Octave, so the loop condition will always be true.I desperately tried to make the more interesting approach shorter, but it turned out to be 9 bytes longer, unfortunately:
This tries to insert the strings
'ER CO'
and' MEANS'
into the string at the correct locations, using direct indexing where'ababab'-96
is a shorter version of[1 2 1 2 1 2]
.This was a bit shorter (93 bytes), but still longer than the naive approach
And another one (89 bytes), using Level River St's approach:
This should work in theory, for one less byte than the original solution, but it fails for some strange reason:
This uses the buggy feature that
fprintf('abc def')
is equivalent tofprintf"abc def"
. Theend
must be on the next line, but it's still one byte shorter since two parentheses are skipped.And one more for 87:
Well, don't say I didn't try :)
la source
fprintf
recycles arguments right? Your last version can be 6 bytes less, Try it online!Alice, 70 bytes
Try it online!
Explanation
Unfortunately, reusing the
MEANS
(with spaces) only saves a single byte over just printing the whole thing in one go. Consequently, extracting theER CO
would actually cost a byte (or probably more, because it would be slightly more expensive to extract another section).la source
C#, 102 bytes
la source
Pyth, 69 bytes
Try it online!
How it works
la source
Lua, 92 bytes
Try it online!
la source
Java (OpenJDK 9), 114 bytes
Try it online! Stop the execution after a few seconds because it does not know when to stop.
la source
for(;;)
C, 86 bytes
See it work online.
la source
gcc
(use default options, so no tail call optimization), and when you run it, redirect output to /dev/null in order to speed up the process. It'll seg fault. With the '-O2' option, which enables tail call optimization, it runs forever as intended.bc, 76 bytes
la source
Perl 6,
81 8079 bytesTry it
Try it
Try it
la source
MATL, 68 bytes
Try it online!
Explanation
la source
Axiom,
9289 bytesinsert in one line to Axiom window. Possible there is one function shorter than "fortranLiteral" that not write "\n"
la source
Braingolf, 78 bytes
or
Braingolf, 77 bytes [non-competing]
This one's non-competing as I had to fix 2 bugs regarding using the greedy modifier (
&
) with the char print operator (@
)la source
Blank, 267 bytes
Pushes
FEWER CODERS MEANS EASIER COMMUNICATION MEANS FASTER CODING MEANS
to the stack, then prints it. Never terminates as no{@}
Also fun fact, I used the following Braingolf script to generate this code
la source
Groovy 79 bytes
Uses groovy's string interpolation.
la source
PowerShell,
10097 bytesTry it online!
Older answer:
PowerShell, 100 bytes
Try it online!
PowerShell is a little tricky for this because most dignified ways of outputting to the console also insert a new line.
Write-Host
is required because of this. However, it still demonstrates how pipelining can shorten the coding footprint.You will need to stop the execution after a short time because it will not return as it is an infinite loop.
Edit: shaved off 3 bytes by changing a
while
loop to afor
loop.la source