You add functionality in vim as you need it too in its profile, local profile, or via number of other means. VimL sux big time comparing to Lisp tho although you can also use Python and Ruby and Lua and whatnot (it sux that it might not be an option on some platforms that easily).