मेरे पास एक लंबी दौड़ वाली गणना है जो एक सूची आउटपुट करती है। मैं इस सूची से मानों को आउटपुट के रूप में आउटपुट करना चाहता हूं। ऐसा करने के लिए एक साफ तरीका क्या होगा?मुझे किसी सूची से मूल्यों को आउटपुट के रूप में कैसे आउटपुट करना चाहिए?
वर्तमान में मैं प्रत्येक मूल्य को STDOUT पर प्रिंट करने के लिए mapM_ print
का उपयोग करता हूं। यह कमांड लाइन पर प्रिंटिंग मानों के साधारण मामले के लिए काफी अच्छा काम करता है, लेकिन थोड़ा सा हैकी और काम करने में मुश्किल लगता है।
इसके अतिरिक्त, कुछ बिंदु पर, मैं अपने कमांड लाइन आउटपुट को एक इंटरैक्टिव विज़ुअलाइजेशन में बदलना चाहता हूं। मैं अपनी सूची को एफआरपी से घटनाओं की धारा की तरह कुछ कैसे बदल सकता हूं? घटनाओं के स्रोत के रूप में मौजूदा जीयूआई ढांचे में प्लग करने में सक्षम होने के नाते यह बहुत अच्छा होगा।
किसी सूची के अलावा किसी अन्य चीज़ का उपयोग करने के लिए फ़ंक्शन को पुनर्लेखन करना एक विकल्प है, हालांकि एक समाधान जो मुझे सूची लेने की अनुमति देता है-आदर्श होगा।
के बाद से हास्केल में सूचियों आलसी और 'mapM_' भी उन लोगों के साथ अच्छी तरह से काम कर रहे हैं, मुझे लगता है कि डिफ़ॉल्ट समाधान काफी अच्छा है। यह सुनिश्चित करने के लिए बस 'hFlush stdout' का उपयोग करें कि आउटपुट वास्तव में फ़्लश किया गया है (जैसे' mapM_ (hFlush stdout << print')। –