मैं Programming in Haskell पुस्तक और परीक्षण पढ़ रहा हूं जीएचसीआई दुभाषिया में उदाहरण प्रदान किए गए हैं। यह पता चला है कि Int
में जीएचसीआई और हग्स दुभाषिया में प्रकार का व्यवहार है। "हास्केल में प्रोग्रामिंग" के अध्याय 3 के अनुसार, 2^31 :: Int
Int
प्रकार की सीमा से बाहर जाना चाहिए। इस बीच, GHCi दुभाषिया में मुझे मिलता है:क्यों इंटेल टाइप 2^31 जीएचसीआई में सीमा से बाहर नहीं जाता है?
Prelude> 2^31 :: Int
2147483648
जबकि हग्स में यह सिर्फ किताब की तरह बर्ताव का कहना है:
Hugs> 2^31 :: Int
-2147483648
GHCi में मैं भले ही परिणाम Int
Prelude> let x = 2^31 :: Int
Prelude> :type x
x :: Int
Prelude> x
2147483648
के प्रकार है जाँच कर सकते हैं
वर्णित अंतर का स्रोत क्या है? क्या मुझे हग्स में पुस्तक से उदाहरणों को चलाया जाना चाहिए या जीएचसीआई का उपयोग करना चाहिए जो कि हास्केल सीखने के लिए अनुशंसित पसंद की तरह लगता है? मैं आपकी मदद के लिए आभारी रहूंगा।
आपको सिर्फ गले को अनइंस्टॉल करना चाहिए – alternative
@ वैकल्पिक: मुझे लगता है कि गले लगाए गए डाउनलोड को नीचे ले जाना चाहिए! या शायद एक अस्पष्ट स्थान पर चले गए और किसी प्रकार के हास्केल-विशिष्ट कैप्चा द्वारा संरक्षित किया गया है जिसके लिए जवाब देने के लिए Haskell98 और Haskell2010 के बीच अंतर के विस्तृत ज्ञान की आवश्यकता है ... – yatima2975