Программно проверить размер fixnum

Викикнига по Common Lisp говорит, что fixnums гарантированно могут содержать целочисленные значения в [-215; 215-1] и зависит от реализации. *features* может сказать мне, является ли хост 32-битным или 64-битным, но это fixnum в Lisp не охватывает все 32/64 бита. Есть ли способ программно проверить, каков размер fixnum в реализации CL?


person FilipK    schedule 16.03.2011    source источник


Ответы (1)


(integer-length most-negative-fixnum) расскажет вам.

person Xach    schedule 16.03.2011
comment
Спасибо. Clozure CL на моем 64-битном openSUSE показывает 60, поэтому 4 бита зарезервированы для флагов. - person FilipK; 18.03.2011