a program that translates one programming language into another
someone who mediates between speakers of different languages
a person who translates written messages from one language to another