What happens if you use scale_x/y/z over time?
No, but how about adding segments to the extending body part dynamically so that it grows towards its target? I can't comment on efficiency or performance but I think it could work. For example, if you wanted an extending arm you could split it into two parts: the arm and the hand. Then you could add arm segments over time and then add the hand once you have extended it enough towards its target.