support polymorphic dispatch in views