The program to rename can be in RAM or archive, but prgmRENAME must be in RAM to run it normally (unless you have a shell that lets you run it from Archive).
EDIT: Don't do that ^ I got ninja'd by calc84maniac, luckily. I had never known that
So to be clear: Do not rename archived programs and then garbage collect. I am working on fixing it to automatically unarchive the program first.