हर Monad
के बाद से अनुक्रमण संचालन पर एक Monoid
है। हास्केल में Monoid
क्यों वारिस नहीं Monad
करता है?प्रत्येक मोनोड monoid है?
9
A
उत्तर
12
यह एक Monad
होने की जरूरत नहीं है यहां तक कि, इस हर Applicative
के लिए काम करता है। तो हाँ, आप निर्धारित कर सकते हैं:
class (Functor f, Monoid (f())) => Applicative f where
लेकिन यह मतलब है कि आप Monoid
उदाहरण हर बार जब आप एक Applicative
उदाहरण बारे में प्रदान करने के लिए होगा। यह काफी परेशान हो सकता है, निश्चित रूप से यह Monoid
उदाहरण अक्सर उपयोग नहीं किया जाएगा।
f()
के आसपास एक नया टाइप रैपर बनाने का एक बेहतर समाधान है, और फिर आप एक बार और सभी के लिए सभी आवेदक फ़ैक्टरों के लिए Monoid
उदाहरण प्रदान कर सकते हैं। the reducers package में एक आसानी से उपलब्ध है।
संबंधित मुद्दे
- 1. अतिरिक्त monoid के बजाय गुणा monoid का चयन कैसे करें?
- 2. स्ट्रिंग एक monoid
- 3. अनुक्रमण सूची monoid बाधा
- 4. स्कैला आंशिक समारोह Monoid हो सकता है?
- 5. इस monoid कानून का नाम क्या है?
- 6. प्रतिबंधित monoid प्रकार मान रचना
- 7. प्रत्येक
- 8. प्रत्येक
- 9. प्रत्येक
- 10. प्रत्येक
- 11. jQuery "प्रत्येक()" फ़ंक्शन तुल्यकालिक है?
- 12. प्रत्येक लूप सम्मिलित प्रत्येक लूप टैग रेल?
- 13. प्रत्येक मिनट और प्रत्येक 24 घंटे
- 14. प्रत्येक एसडीके
- 15. प्रत्येक संशोधन
- 16. प्रत्येक कीस्ट्रोक
- 17. प्रत्येक लूप
- 18. प्रत्येक दिन
- 19. प्रत्येक दिन
- 20. प्रत्येक लूप
- 21. प्रत्येक क्रिया
- 22. प्रत्येक कॉलम
- 23. प्रत्येक प्रतिबद्धता
- 24. प्रत्येक समय
- 25. प्रत्येक प्रतिबद्धता
- 26. प्रत्येक नोड
- 27. प्रत्येक सरणी
- 28. प्रत्येक समूह
- 29. प्रत्येक लूप
- 30. प्रत्येक अद्यतन
वास्तव में क्या आप 'अनुक्रमण आपरेशन' यहाँ से मतलब है? –
@Rhymoid: मुझे पूरा यकीन है कि यह '>>' है। –
@ टिखोन जेल्विस: '>>' का एक सीमित रूप, सही? –