It does work for negative bases. Representation of a number in any base is in essence a sum of base powers multiplied by coefficients. The geometric series just has all coefficients equal to 1 after the radix point (and a 1 before it, if we start addition from the 0th power).
Nit: strictly speaking this only applies when |r|<1
(Which nicely corresponds to any base |d|>1. Hm. I wonder if this works in e.g. negabinary?)
It does work for negative bases. Representation of a number in any base is in essence a sum of base powers multiplied by coefficients. The geometric series just has all coefficients equal to 1 after the radix point (and a 1 before it, if we start addition from the 0th power).