minBound和maxBound为Int返回错误的数字

Hen*_*y98 8 haskell

固定精度整数类型,其范围至少为[-2 ^ 29 .. 2 ^ 29-1].可以通过使用Bounded类中的minBound和maxBound来确定给定实现的确切范围.

这直接来自hackage.haskell.org.

根据hackage.haskell.org和learnyouahaskell.com的说法,我应该得到的是-2147483648为了minBound2147483648maxBound.

当我自己实际运行它时,我得到了这个结果:

在此输入图像描述

如果这是一个非常愚蠢的问题,请道歉.我是Haskell的新手,正在测试看看它是如何工作的.

难道我做错了什么?

luq*_*qui 12

Ints只能保证至少具有该范围. Int平台上的s似乎是64位.比较2^63:

ghci> 2^63
9223372036854775808
Run Code Online (Sandbox Code Playgroud)