源代码到源代码编译器(英语:source-to-source compiler)、翻译器(transcompiler)或转译器(transpiler)是以某种编程语言的程序源代码作为输入,生成以另一种编程语言构成的等效源代码的编译器。源代码到源代码编译器会在大致相同的抽象级别之间抽象化,而传统编译器则从一个较高等级的高级语言转换为低级语言。举例来说,源代码到源代码编译器可以将一个程序从Pascal转换为C语言。自动并行化(英语:Automatic parallelizing)编译器经常采用高级语言的程序作为输入,然后转换代码并增加并行代码注释(例如OpenMP)或语言结构(例如Fortran的forall
语句)。
转译语言的例子包括:Closure Compiler(英语:Google Closure Tools)、Coccinelle(英语:Coccinelle (software))、CoffeeScript、Dart、Haxe、Nim、TypeScript和Emscripten(英语:Emscripten)。