Here's what I came up with:
SELECT procname, isproc, paramtypes::LVARCHAR AS paramtypes
FROM sysprocedures
WHERE [whatever conditions]
INTO TEMP proctemp WITH NO LOG;
UNLOAD TO "dropspatialproc.sql" DELIMITER ";"u
SELECT '{ ' || TRIM(procname) || '-' || (1000 + LENGTH(paramtypes))::LVARCHAR || ' } ' ||
'DROP ' || CASE WHEN isproc = 'f' THEN 'FUNCTION' ELSE 'PROCEDURE' END ||
' IF EXISTS ' || TRIM(procname) ||
CASE WHEN (LENGTH(paramtypes) > 0) THEN '(' || TRIM(paramtypes) || ')' ELSE '' END
FROM proctemp
ORDER BY 1 DESC;
------------------------------
TOM GIRSCH
------------------------------