Você pode dentro de uma procedure, função ou bloco de código, na área de declarações, criar sub – rotinas que são visíveis localmente.
EXECUTE BLOCK RETURNS (N INT) AS DECLARE FUNCTION F(X INT) RETURNS INT AS BEGIN RETURN X+1; END BEGIN N = F(5); SUSPEND; END ^;