2011-09-22 17 views
5

मैं उच्च प्रकार के साथ खेल रहा हूं, और मैं रचना का उपयोग करने की कोशिश कर रहा हूं।क्या मैं एक ऐसे फ़ंक्शन को लिख सकता हूं जिसमें निहित तर्क हो?

def p2(a : Int) = a + 2 
def p3(a : Int) = a + 3 
val p5 = p2 _ compose p3 
def pn3[T](n : T)(implicit ev : Numeric[T]) = ev.plus(n, ev.fromInt(3)) 
val pn5 = p2 _ compose pn3 

यह अंतिम पंक्ति जब तक सभी काम करता है: मैं निम्नलिखित कोड मिल गया है! "मैं चाहता हूँ Numeric[Int]"

error: could not find implicit value for parameter ev: Numeric[T] 

कौन समझ में आता है लेकिन मैं इसे कैसे बताऊँ,

+0

गंभीरता से, @aioobe? आपने मशहूर लेखक और सॉफ्टवेयर प्रकार-सिद्धांतवादी अलेक्जेंड्रे डुमास के संदर्भ में मेरा संपादन संपादित किया? आह। – Malvolio

+0

हे। मुझे पता नहीं था। मैंने * आप * के लिए यह किया था। मैंने बंद होने से बेहतर शब्द के साथ प्रश्न देखे हैं ... – aioobe

उत्तर

9

परीक्षण और त्रुटि;)

val pn5 = p2 _ compose pn3[Int] 
+0

डी ओह। डेस्क के लिए चेहरा। – Malvolio

संबंधित मुद्दे

 संबंधित मुद्दे