Usa guiones bajos
Este es probablemente el consejo más importante. Casi todos los programas de golf de Röda utilizan guiones bajos.
La sintaxis de subrayado es el azúcar sintáctico para los for
bucles. Las siguientes líneas de código son equivalentes:
ls""|fileLength x for x|sort|pull
ls""|fileLength _|sort|pull
Cada guión bajo agrega una nueva variable a un for
bucle invisible que está alrededor de la declaración. El bucle extrae un valor de la secuencia para cada variable / guión bajo y luego se repite, hasta que no quedan valores.
Los guiones bajos se pueden usar en cualquier parte de las declaraciones:
a[x:y+1]=[1]*(1+y-x) /* Sets range x..y (inclusive) */
seq x,y|a[_]=1 /* 6 bytes less */
Si debe hacer referencia al mismo valor de subrayado más de una vez, o utilizar los valores en orden inverso, puede poner un número después del subrayado:
a|[_^_1] /* maps x to x^x */
a|[_2-_1] /* maps each pair (x,y) to y-x, eg. [1,2,4,8] -> [1, 4] */