If a compiled language is used, the program must delete the compiled executable (but need not delete the source file). If an interpreted language is used, the program must delete the source file.
My opening bid:
Python (29 characters)
Edit: to prevent solutions like rm -rf /, the program must not delete anything except the executable or source file.