Каков размер Int (ограниченное целое число) в Haskell, или я должен сказать в GHC?Haskell Int size
В практике я написал короткую программу, чтобы получить число битов, установленных в Int
import Data.Bits
getBits :: Int -> Int
getBits x
| x == 0 = 0
| otherwise = 1 + (getBits y)
where y = x .&. (x - 1)
main = do
putStrLn "type a integer"
num <- getLine
let n = read num :: Int
putStrLn $ "result is: " ++ show (getBits n)
Если я номер входа -1, результат равен 64, что указывает на размер в Int составляет 64 бит , Почему это так? Почему это не 32 бит, как в C/C++?
Почему это должно быть? – Squidly
Инты не всегда 32 бита в C и C++. – mipadi