Alt çizgi kullan
Bu muhtemelen en önemli ipucu. Neredeyse her golf sahası Röda programı alt çizgi kullanır.
Alt çizgi sözdizimi for
döngüler için sözdizimsel şekerdir . Aşağıdaki kod satırları eşdeğerdir:
ls""|fileLength x for x|sort|pull
ls""|fileLength _|sort|pull
Her alt çizgi for
, ifadenin etrafındaki görünmez bir döngüye yeni bir değişken ekler . Döngü, her değişken / alt çizgi için akıştan bir değer alır ve hiçbir değer kalmayana kadar tekrar eder.
Alt çizgiler ifadelerde herhangi bir yerde kullanılabilir:
a[x:y+1]=[1]*(1+y-x) /* Sets range x..y (inclusive) */
seq x,y|a[_]=1 /* 6 bytes less */
Aynı alt çizgi değerine birden çok kez başvurmanız veya değerleri ters sırada kullanmanız gerekiyorsa alt çizgiden sonra bir sayı koyabilirsiniz:
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] */