Девочки, не ссорьтесь!Cуществует "и то и это".
Остроконечники^W различающие "перевод" (трансляцию) и тупоконечники^W считающие компиляцию частным случаем трансляции. Тоже "0 ∈ ℕ vs 0 ∉ ℕ", только в профиль.
Классический пример: "переводчик формул" (FORmula TRANslation, FORTRAN)
> Перечитайте что ли вводную главу книги драконов.
Цитирую, с картинками:
> 1.1. Language Processors
> Simply stated, a compiler is a program that can read a program in one language -- the source language -- and translate it into an equivalent program in another language -- the target language; see Fig.1.1
> An important role of the compiler is to report any errors in the source program that it detects during the translation process.
>Figure 1.1: A compiler
source program
|
v
+-------------+
| Compiler |
+-------------+
|
v
target program
В той же англоязычной википедии стоит:
> A compiler is a computer program that translates computer code written in one programming language (the source language) into another programming language (the target language).
Более того, с этим же "согласны" берклеевцы:
http://inst.eecs.berkeley.edu/~cs164/sp19/lectures/lecture1.pdf
> Implementing Programming Languages
> • Strategy 2: Compiler: program that translates program into machine
[...]
> – Variant of 2: Compiler that translates program into another programming language (such as C), or into an intermediate language (such as Java class format) for which there is a translator or compiler.
Т.е. компилятор тут - частный случай/разновидность транслятора.
> Кричать про экспертов и, при этом, не отличать компилятор от транслятора - гиблое дело.
Судить по этому критерию о качестве знаний - не менее гиблое.