A person who complains or finds fault with things in an annoying or excessive way.
From the verb 'carp,' meaning to complain or grumble, which comes from Old Norse 'karpa' meaning to chatter or brag. The suffix '-er' indicates someone who performs the action.
Try Another Word