के रूप में -with-rtsopts ghc विकल्प का उपयोग करना मैं हास्केल में एक एल्गोरिदम पहेली को हल करने का प्रयास कर रहा हूं, और ऐसा करने के लिए मुझे काफी बड़ी डेटा संरचना की आवश्यकता है। हालांकि समस्या निवारण साइट मैं अपना समाधान प्रस्तुत करता हूं, बड़े स्टैक की अनुमति देने के लिए किसी भी रन टाइम विकल्प का उपयोग नहीं करता है, लेकिन मैंने सुना है कि मैं कंपाइलर विकल्पों को प्रज्ञा के रूप में उपयोग कर सकता हूं। मैं अपने कोड में निम्न pragma का उपयोग कर की कोशिश की है:प्रोजेमा
{-# OPTIONS_GHC -O2 -rtsopts -with-rtsopts=-K32m #-}
तब मैं ghc --make algo.hs
साथ संकलन। हालांकि, जब मैं कुछ बड़े परीक्षणों पर अपनी मशीन पर चलता हूं, तो प्रोग्राम स्टैक ओवरफ़्लो के साथ दुर्घटनाग्रस्त हो जाता है, और रिपोर्ट करता है कि वर्तमान स्टैक आकार 8 एमबी है। दूसरी ओर, जब मैं उस तरह संकलन:
ghc -rtsopts -with-rtsopts=-K32M --make algo.hs -fforce-recomp
कार्यक्रम एक ही डेटा पर बस ठीक काम करता है, किसी भी +RTS
तर्क जोड़े बिना। मैं जीएचसी 7.0.2 का उपयोग करता हूं, लेकिन समस्या निवारण साइट 6.12.3 का उपयोग कर रही है, इसलिए अधिमानतः मैं ऐसे समाधान की तलाश में हूं जो उस पुराने संस्करण के साथ भी काम कर सके।