: _ 999 SWAP ( stop indicator ) DUP 0 = IF '0' EXIT THEN ( 0 is a special case ) BEGIN DUP 0 = IF DROP EXIT THEN 10 /MOD ( r q ) SWAP '0' + SWAP ( d q ) AGAIN ; : . ( n -- ) ( handle negative ) DUP 0< IF '-' EMIT -1 * THEN _ BEGIN DUP '9' > IF DROP EXIT THEN ( stop indicator ) EMIT AGAIN ;