interpreter dispatch: function map vs reflect