मैं राज्य मोनैड में मूल्य लगाने के लिए स्कालज़ की pure
विधि को कॉल करना चाहता हूं। निम्नलिखित काम करता है:स्कैला में, क्या सामान्य प्रकार की धैर्य को कम करने के लिए एक शॉर्टेंड है?
type IntState[A] = State[Int, A]
val a = "a".pure[IntState]
a(1)
(Int, java.lang.String) = (1,a)
मैं भी प्रकार उर्फ समाप्त कर सकते हैं (धन्यवाद Scalaz के Pure.scala):
val a = "a".pure[({type T[A]=State[Int,A]})#T]
a(1)
(Int, java.lang.String) = (1,a)
लेकिन वह बेहद भद्दा है। क्या इस तरह के एक प्रकार को संश्लेषित करने का एक छोटा रास्ता है? समारोह शाब्दिक के लिए प्लेसहोल्डर वाक्य रचना की तरह, वहाँ की तरह कुछ है:
"a".pure[State[Int, *]]
मुझे नहीं लगता कि स्कैला में ऐसी वाक्य रचनात्मक चीनी है, क्योंकि [मिचिड आंशिक प्रकार का आवेदन उद्धृत करता है] (http://stackoverflow.com/questions/7045967/what-are-type-projections-useful-for/7046860#7046860) प्रकार के अनुमानों की उपयोगिता के उदाहरण के रूप में। –