मेरे पास एक ऐसा फ़ंक्शन है जिसका मैं अक्सर उपयोग करता हूं, जो मुझे मेरे कोड को ऐसे तरीके से लिखने की अनुमति देता है जो मेरे लिए अधिक प्राकृतिक लगता है।हास्केल फ़ंक्शन बाएं से दाएं
infixl 6 $:
($:) :: a -> (a -> b) -> b
a $: f = f a
यह मैं
let x = getData
$: sort
$: group
$: aggregate
बजाय
let x = aggregate
$ group
$ sort
$ getData
मैं हाल ही में पता चला Clojure इस में (मैं बहुत Clojure पता नहीं है बनाया की तरह कुछ है ऐसा ही कुछ करने की सुविधा देता है, लेकिन मुझे लगता है कि यह (-> getData sort group aggregate)
लिखा जाएगा?) जो मुझे आश्चर्यचकित करता है कि हास्केल ने इसे भी बनाया है। हालांकि होगल doesn't have any results।
क्या कुछ मानक शामिल हैं जिसमें कुछ समान शामिल है? अगर संभवतः मेरे पास ऐसा आम हिस्सा मूर्खतापूर्ण है तो यह शायद मेरे कोड को पढ़ने के लिए कठिन बनाता है।
मेरी प्राथमिकता, इस आपरेशन 'OOHaskell के अनुसार #' कॉल करने के लिए है, क्योंकि यह मौलिक वस्तुओं पर विधि चयन और '#' रूप में एक ही आपरेशन है इस के लिए इस्तेमाल किया ऑपरेटर है ओकैमल में वैकल्पिक रूप से, एफ # की प्रतिलिपि बनाकर हम '|>' –
आरेखों का उपयोग # # भी कर सकते हैं। – Long
Data.Function को 'फ्लिप ($)' को शुरू करने के लिए एक प्रस्ताव था, लेकिन क्योंकि कोई आम सहमति नहीं है करने के लिए (शुरुआती आदि को भ्रमित करने का विरोध किया) क्या ऐसी बात उपयोगी होगा पर पहुँचा जा सकता है यह हटा दिया गया था। यहाँ चर्चा है: http://markmail.org/message/vsplpb7aajp7goqo?q=python – David