digits([arg]) := block( [n: first(arg), b: if length(arg) > 1 then second(arg) else 10, v: [ ], q], do ( [n, q]: divide(n, b), v: cons(q, v), if n=0 then return(v)))$ binary(n) := simplode(digits(n, 2))$ binary(9000); /* 10001100101000 */