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
