A person who annoyingly tries too hard to impress with their cleverness; a clever dick.
A person who is pedantic about grammar.