2013-02-15 42 views
5

अगर मैं एक सूची मैं ऐसा कर सकता है को जोड़ने के लिए चाहता था:क्या मैं एक अज्ञात फ़ंक्शन लिखने के बिना इंफिक्स ऑपरेटर के साथ फोल्ड कर सकता हूं?

:

List.foldr + 0 [1, 2, 3] 

मैं कुछ इस तरह की कोशिश की:

- List.foldr (fn (x, y) => x + y) 0 [1, 2, 3] 
val it = 6 : int 

वहाँ किसी भी तरह से की तर्ज पर कुछ लिखने के लिए है

fun inf2f op = fn (x, y) => x op y; 

उत्तर

7

आप करीब हैं। दूसरे उदाहरण में op कीवर्ड जोड़ें।

- List.foldr op + 0 [1,2,3]; 
val it = 6 : int 
+0

सौंदर्य धन्यवाद ब्रायन – AJcodez

+0

अनुवर्ती, वहाँ की तरह एक है '(?? च)' जिसके लिए '(एफ एन एक्स => च एक्स)' खड़ा है? – AJcodez

+5

उह ... क्या वह सिर्फ 'एफ' नहीं है? – Tayacan