In the practical world of computing it is rather uncommon that a program once it performs correctly and satisfactorily remains unchanged forever.