UDF translate(input, from, to) doesn't accept any CHAR or VARCHAR typed argument.
hive> desc vc;
c char(5) None
vc varchar(7) None
s string None
hive> select translate("my input", c, "ll") from vc;
FAILED: SemanticException [Error 10016]: Line 1:29 Argument type mismatch 'c': A string argument was expected but an argument of type char(5) was given.
However, if the type is String, then the UDF works fine.