some improvements `TagOf`

* rename `TagOf#on` to `TagOf#apply`
* bind all `TagOf` objects. avoid unnecessary object allocation