하스켈에서 32 비트 정수의 길이를 넘는 숫자를 처리하는 함수를 작성했습니다. 이 작업을 수행 할 수있는 유형을 찾을 수 없으며 잘못된 용어를 찾는 것 같습니다.하스켈 64 비트 숫자 유형
그것은 정밀도의 손실없이 약 2^(40)의 길이와 숫자를 개최 할 수 있어야
예 : 대신 Int
의 Integer
데이터 유형을 원하는
addTwo :: Int -> Int -> Int
addTwo a b = a + b
main :: IO()
main = do
putStrLn (show (addTwo 700851475143 1))
아이러니하게도 addTwo가 다형성으로 추론되었으므로 (예 : Num a => a -> a -> a), 그 다음 숫자에 대해 가장 일반적인 유형 인 정수인 – newacct
이 기본값으로 설정되었지만 아무 것도 배울 필요가 없었습니다. – Yacoby