A person who detests, abhors, or strongly expresses disgust and hatred toward something.
From 'abominate' plus the agent noun suffix '-or', which denotes a person who performs the action. This Latin-derived suffix is common in English for naming people who do things (like 'teacher' or 'creator').
Try Another Word