vimscriptである引数に対して連続的に関数を適用させたいことがあって、
let func_list = [ s:foo,s:bar ];
for func in func_list
call func(a,b,c)
endfor
みたいなことしたいなーと思いつつできないものだと思ってましたが
let func_list = [ "foo","bar" ];
for func in func_list
call s:{func}(a,b,c)
endfor
とかやればできるんですね。
vimscriptの仕組みがいまいち分からない…