Well.. It sort of is, for some types. You can use Val to lift a runtime value that’s isbits or of type Symbol to the type domain and dispatch on that in the signature. Things like your String won’t work though.
Keep in mind though that this very likely will dispatch dynamically, if the value you’re dispatching on is not known statically.