No, they are meant to be supported without any special treatment. I don't know what is happening in your example.
Hi,
It looks that guile returns incorrect results when it works with really big numbers.
I've found it during resolving problem 48 from Project Euler:
http://projecteuler.net/problem=48
The solution is trivial:
(define (problem-48 limit)
(define (F)
(let loop ((n 1)
(sum 0))
(if (<= n limit)
(loop (+ n 1) (+ sum (expt n n)))
sum)))
(let* ((str (number->string (F)))
(len (string-length str)))
(substring str (- len 10) len)))
(display (problem-48 1000))
(newline)
The proper answer is 9110846700 but guile returns 6457854188
I've tested solution under other scheme implementations (MIT scheme, petite and mzscheme) and it works as it should.
Does such a big numbers in guile require any special treatment or just they are not supported?
Best,
Jozef