जीएचसी चेतावनी देता है कि मेरे पास शीर्ष स्तर पर फ़ंक्शन हस्ताक्षर नहीं हैं। मुझे नहीं पता कि मुझे उनकी आवश्यकता क्यों होगी।मेरे शीर्ष स्तर के कार्यों को हास्केल में हस्ताक्षर की आवश्यकता क्यों है?
applyValue :: forall t t1 t2 t3 t4.
(t2 -> t)
-> (t2 -> t3 -> t4 -> t1) -> t2 -> t3 -> t4 -> (t -> Bool) -> [t1]
तो मैं क्यों परेशान करेगा उन्हें जोड़ने: उन्हें प्रदान करने के साथ समस्या यह है कि वे काफी परिष्कृत कर रहे हैं, यह एक (ऑटोजनरेटेड) की तरह है?
समारोह में ही:
applyValue getValueAt stitchAndMove at fabric mark matchAt =
if matchAt (getValueAt at)
then [stitchAndMove at fabric mark]
else []
क्या आपके पास कोई एक्सटेंशन सक्षम है? –
क्या हम कुछ कोड देख सकते हैं? – jozefg
यदि ऐसा होता है क्योंकि आप '-Wall' के साथ संकलित कर रहे हैं, तो आप' -फनो-चेतावनी-अनुपलब्ध-हस्ताक्षर 'का उपयोग कर सकते हैं। इसे अच्छा अभ्यास माना जाता है कि उन्हें बाहर न छोड़ें - कारणों से डैनियल वाग्नेर का जवाब देखें। –