trailing-zeros ( m -- n ) (original) (raw)
Vocabulary
math.cardinality
Inputs
m | a number |
---|
Outputs
n | a number |
---|
Word description
Counts the number of trailing 0 bits in m, returning fixnum-bits if the number is zero.
Definition
GENERIC: trailing-zeros ( m -- n )
Methods
USING: kernel layouts math math.cardinality ;
M: fixnum trailing-zeros
[ fixnum-bits ]
[ 0 [ over even? ] [ [ 2/ ] [ 1 + ] bi* ] while nip ]
if-zero ;