Você pode usar esta função para carregar o código de uma função de um arquivo da mesma forma que autoload o faz, sem a restrição de que o nome do arquivo deve corresponder ao nome da função.
## load_from FILE FUNCTION_NAME
load_from () {
eval "$2 () { $(<$1) }"
}
Veja como o código do wrapper se parece. $^fpath/somefunction(N) expande para a lista de definições de somefunction no caminho de carregamento ( $^fpath/somefunction expande para a lista de /dir/somefunction para cada /dir em $fpath e o qualificador de glob (N) restringe a expansão para arquivos existentes). Note que isto só funciona se você tiver um único nível de wrapper e o wrapper for no fpath.
#autoload somefunction
local some_parameter=overridden_value
local autoload_files
autoload_files=($^fpath/somefunction(N))
load_from $autoload_files[2] somefunction_wrapped
somefunction_wrapped "$@"