My brain has exploded here. You want to have a single function that compares values, types and symbols, all at the same time?
Feels terribly wrong.