एक कस्टम सेट टाइप बनाइए।
कभी-कभी किसी खास तरह का अपना डेटा स्ट्रक्चर बनाना ज़रूरी हो जाता है, जैसे कोई सेट। इस अभ्यास में आप अपना खुद का सेट बनाएँगे। इससे कोई फर्क नहीं पड़ता कि यह अंदर से कैसे काम करता है; बस इतना ज़रूरी है कि यह एक ऐसे सेट की तरह व्यवहार करे जिसमें सारे एलिमेंट अलग-अलग हों।
इस अभ्यास को पूरा करने के लिए आपको CustomSet डेटा टाइप बनाना होगा, जिसमें Eq और Show के इंस्टेंस हों, और नीचे दिए गए फंक्शन लागू करने होंगे:
deletedifferenceemptyfromListinsertintersectionisDisjointFromisSubsetOfmembernullsizetoListunionएक डमी डेटा डिक्लेरेशन और टाइप सिग्नेचर आपको पहले से मौजूद मिलेंगे, लेकिन इन फंक्शन को परिभाषित करना और एक सार्थक डेटा टाइप, newtype या टाइप सिनोनिम बनाना आपको ही करना है।
अगर आप कुशल इम्प्लीमेंटेशन लिखना चाहते हैं, पर यह समझ नहीं आ रहा कि शुरुआत कहाँ से करें, तो मेरी जानकारी में सबसे अच्छी शुरुआती किताब Chris Okasaki की "Purely Functional Data Structures" है। इसका एक संस्करण आप यहाँ पढ़ सकते हैं: https://www.cs.cmu.edu/~rwh/theses/okasaki.pdf
Exercism पर साइन अप कीजिए और Haskell को 107 अभ्यास तथा असली इंसानों से मिलने वाली मेंटरिंग के साथ सीखिए और उसमें महारत हासिल कीजिए, वह भी बिल्कुल मुफ्त।