Como cada função/procedimento deve ter uma entrada no pg_proc, você pode usar a chave primária para identificar o procedimento. Isso também eliminaria os problemas com procedimentos com o mesmo nome, mas diferentes números de parâmetros ou diferentes tipos de parâmetros.
Abreviações para isso são os tipos
regproc
e regprocedure
com os moldes associados para facilitar o manuseio. Procure o manual
Para estes. Identificar a função e passá-la não é problema:
select 'pg_database_size(oid)'::regprocedure; -- create "reference"
regprocedure
-----------------------
pg_database_size(oid)
Use
regprocedure
como o tipo de parâmetro. O problema que eu ainda não descobri é como chamar uma coisa dessas de uma maneira conveniente.