EnglishMain Dictionary
moralist
Universal Words
noun
1 (often disapproving) a person who has strong ideas about moral principles, especially one who tries to tell other people how they should behave
2 a person who teaches or writes about moral principles