यहां कुल नौसिखिया, संघर्ष कर रहा है।हास्केल: मैं सेट के लिए एक प्रकार की कक्षा को कैसे परिभाषित कर सकता हूं?
मैं सेट के लिए एक प्रकार की कक्षा को परिभाषित करने की कोशिश कर रहा हूं। इस मामले के लिए इसे केवल 'अस्तित्व' की परिभाषा की आवश्यकता होगी। 'मौजूद' एक सेट आइटम पर एक सेट और फ़ंक्शन लेगा, और एक बूलियन लौटाएगा। मैं हास्केल में इसे कैसे परिभाषित कर सकता हूं?
निम्नलिखित दिशा में भी निम्नलिखित है? वर्ग के लिए बहुत अधिक मापदंडों `सेट करें:
(परिणाम - तो वहाँ प्रकार वर्ग परिभाषा और सूची के साथ सेट की एक कार्यान्वयन, 'मौजूद है' जिसके लिए अब के लिए सच रिटर्न ..
-- Set.hs --
class Set a b where
exists :: a -> (b -> Bool) -> Bool
-- ListSet.hs --
instance Set ListSet a where
exists a f = True
है ')
बेशक, बाद वाले के लिए आवश्यक है कि तत्व प्रकार सेट प्रकार के लिए अंतिम प्रकार पैरामीटर हो - कुछ हमेशा संभव नहीं है, जैसे कि आप 'ए -> बूल' के लिए एक उदाहरण बनाना चाहते हैं। दूसरी तरफ, एसोसिएटेड प्रकार के परिवार, ठीक से हल करेंगे। – Carl
धन्यवाद! मुझे दूसरा रास्ता मिल गया! मुझे यह स्वीकार करना होगा कि मुझे समझ में नहीं आता कि वहां क्या चल रहा है, लेकिन उम्मीद है कि यह मेरे लिए खुद को प्रकट करता है ... – tero