The use-case that I have is the following. I'm writing a job-control tracking sub-system that will store when jobs are started, finished, failed, etc. I would like to have the ability to have a process that is requesting to start, to actually wait a specified period time before starting. It could wait for another job to finish. I'm writing this in plpgsql since I'm storing status in the db.
Do you have any use cases in addition to what's already been mentioned? Sleeping isn't really a database operation, so there needs to be some justification for making it a standard function.