अंडरस्कोर का उपयोग करें
यह शायद सबसे महत्वपूर्ण टिप है। लगभग हर गोल्फ वाला रोडा कार्यक्रम अंडरस्कोर का उपयोग करता है।
अंडरस्कोर सिंटेक्स for
छोरों के लिए सिंटैक्टिक चीनी है। कोड की निम्नलिखित पंक्तियाँ समतुल्य हैं:
ls""|fileLength x for x|sort|pull
ls""|fileLength _|sort|pull
प्रत्येक अंडरस्कोर एक अदृश्य for
लूप में एक नया चर जोड़ता है जो कथन के आसपास है। लूप प्रत्येक चर / अंडरस्कोर के लिए स्ट्रीम से एक मान खींचता है और फिर दोहराता है, जब तक कि कोई मूल्य नहीं छोड़ दिए जाते हैं।
अंडरस्कोर को बयानों में कहीं भी इस्तेमाल किया जा सकता है:
a[x:y+1]=[1]*(1+y-x) /* Sets range x..y (inclusive) */
seq x,y|a[_]=1 /* 6 bytes less */
यदि आपको एक से अधिक समान अंडरस्कोर मान का उल्लेख करना चाहिए, या रिवर्स ऑर्डर में मूल्यों का उपयोग करना चाहिए, तो आप अंडरस्कोर के बाद एक नंबर डाल सकते हैं:
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] */