Quels conseils généraux avez-vous pour jouer au golf à LOLCODE? Je cherche des idées qui peuvent être appliquées aux problèmes de golf de code en général qui sont au moins quelque peu spécifiques à LOLCODE. (par exemple, "supprimer les commentaires" n'est pas une réponse). Veuillez poster un pourboire par réponse.
14
Réponses:
Définissez les variables en utilisant la syntaxe
variable R value
plutôt queI HAS A variable ITZ value
.Si vous souhaitez définir une variable
n
égale à 1,n'est que de 5 octets, alors que
est de 15 octets.
la source
Dans de nombreuses implémentations LOLCODE, comme celle sur repl.it ,
HAI
etKTHXBYE
, qui commencent et terminent les programmes respectivement, ne sont pas nécessaires. Dans les implémentations où elles sont nécessaires, le numéro de version aprèsHAI
n'est pas nécessaire (par exempleHAI 1.2
).De même, la
STDIO
bibliothèque est généralement chargée par défaut, elleCAN HAS STDIO?
est donc également inutile.la source
Dans de nombreux cas, il est plus court de lire les valeurs des variables depuis STDIN plutôt que de définir une fonction. Cependant, notez que
GIMMEH
, qui lit l'entrée de STDIN, lit toujours unYARN
(c'est-à-dire une chaîne). Mais vous pouvez profiter du typage dynamique de LOLCODE et ajouter 0 pour convertir en aNUMBR
.Par exemple,
La définition
n
est de 26 octets, y compris les sauts de ligne. Comparez cela à une fonction définie par l'utilisateur:Cela nécessite 28 octets.
Notez que vous pouvez également multiplier par 1 pour convertir en a
NUMBR
, mais cela nécessite 4 octets de plus que la somme:la source
n IS NOW A NUMBR
est un octet plus court quen R SUM OF n AN 0
Lors de l'impression de la valeur d'une variable dans STDOUT, tenez compte des éléments suivants:
est beaucoup plus court que
De plus, chaque fois qu'une nouvelle ligne de fin est acceptable,
qui inclut un retour à la ligne par défaut, est plus court que
qui supprime la nouvelle ligne.
la source