हैलो Haskellers और Haskellettes,Haskell नेस्ट खाली सूचियों
जब http://learnyouahaskell.com/ पढ़ने मेरा एक दोस्त एक समस्या के साथ आया था -sub -_- sublists खाली हैं। मेरा पहला अनुमान था - होना चाहिए - लेकिन मुझे टाइप एनोटेशन लिखने में बड़ी समस्या है। काम नहीं कर रहा - -
वह जैसे
nullRec l = if null l
then True
else if [] `elem` l
then nullRec (head [l]) && nullRec (tail l)
else False
जो कुछ है की कोशिश की :-)
मैं
- concat साथ तह की तरह कुछ के साथ आया था - आ ही लंबी सूची प्राप्त करने के लिए
(मुझे समस्याएं लागू करने में समस्याएं) - या एक अनंत ट्रेलीइक डेटाटाइप बनाना - और सूची
से बना (अभी तक लागू नहीं किया है)
लेकिन बाद इस समस्या के लिए overkill की तरह एक सा ध्वनि। अग्रिम
सभी टिप्पणियों की प्रतिक्रिया के रूप में इस तरह ;-)
धन्यवाद एक धूप रविवार को - - क्या अपने विचारों है इस किया जा रहा बुरा शैली मैं जोड़ने के लिए इस है करना चाहते हैं बस एक प्रयोग!
घर पर यह कोशिश न करें! ;-)
इस तरह के फ़ंक्शन का प्रकार क्या होना चाहिए (यदि आप इसे सामान्य सूचियों पर लागू करते हैं)! – yatima2975
मैं इसके बारे में सोचता हूं - यह अनंत होना चाहिए [[... [ए] ...]] लेकिन हैकेल में लिखना संभव नहीं है - यही कारण है कि मैं दूसरे दृष्टिकोण के साथ आया था। लेकिन क्या ऐसा करने का एक आसान तरीका है। इसके अतिरिक्त मेरा दिमाग थोड़ा धीमा है क्योंकि आज मैं बीमार हूं। – epsilonhalbe
बीमार या नहीं, आप सही रास्ते पर हैं! कार्यों के परिवार को लिखना काफी आसान है 'nullRec2 :: [[a]] -> बूल',' nullRec3 :: [[[a]]] -> बूल 'और इतने पर (जोड़े को आजमाएं!), लेकिन आप उन्हें आसानी से एक प्रकार के हस्ताक्षर फिट करने के लिए नहीं मिल सकता है। आपको या तो एक पेड़ प्रकार की आवश्यकता है जैसे 'डेटा ट्री ए = शाखा [वृक्ष ए] | नोड ए 'या शायद टाइपक्लास के साथ कुछ संभव है (अभी तक इस दृष्टिकोण के बारे में ज्यादा नहीं सोचा है)। – yatima2975