And besides, lugging around variables in every object containing the same function pointers isn't exactly pretty.
how is that different from lugging around the wrapper function?
Given the explanation, the wrapper function mostly hurts your eyes as a coder whereas Pike internally mostly gets rid of the overhead of it, and could theoretically probably optimize away all of it given some light and magic on the parse tree, whereas the variable case isn't as easily optimized.
Code being primarily written for people to read and only incidently for computers to execute, your variable choice could still be right for you, of course, but you should of course also be informed about consequences of design rather than blindly assuming it's ideal code.