दूसरे दिन मैं ऑपरेटर, -<
पर आया, जो एक मोनैड में एक चर के लिए बाध्यकारी के संदर्भ में दिखाई देता है; विशेष रूप से, ऐसा लगता है कि यह एक फ़ंक्शन के लिए एक मान पास करता है जिसे तब एक मोनैड के दायरे में मौजूद चर के लिए असाइन किया गया है (और संभवतः मूल्यांकन किया गया?)।क्या बिल्ली है "- <", वैसे भी?
उदाहरण उपयोग:
myMonad = do
myVar <- f -< x
इस बारे में कुछ सवाल: सबसे पहले, यह क्या कहा जाता है? ऑपरेटर स्वयं गैर-googleable है (Google को <
या >
पसंद नहीं है), और एक नाम जो मैंने पाया है, "arrow application", आमतौर पर the other kind of Arrow
present in Haskell से लिंक होता है, जो असंबंधित प्रतीत होता है।
दूसरा, इस ऑपरेटर को वहां के अधिकांश शिक्षण संसाधनों में क्यों समझाया नहीं गया है? न तो "मोनाड्स के लिए सज्जन परिचय" और न ही LYAH इसे उत्तीर्ण उल्लेख के रूप में बहुत कुछ देता है, और हास्केल ऑपरेटरों की अधिकांश सूचियां भी इससे गुजरती हैं। (क्या यह बुरा अभ्यास माना जाता है?)
अंत में, यह (myVar <- f -< x) == (myVar <- (f x))
में ब्रांड्स का उपयोग करने के बराबर है? या यह let myVar = (f x)
का उपयोग करने की तरह है? किसी भी मामले में, यदि इसका उपयोग किया जाता है, तो -<
का उपयोग माता-पिता या $
पर क्यों करें?
प्रतीकों की खोज करते समय, [hoogle] (https://www.haskell.org/hoogle/?hoogle=-%3C) और [hayoo] (http://hayoo.fh-wedel.de/?query = -% 3 सी) आपके दोस्त हैं। – rampion