Skip to main content

What is the difference between compiled and interpreted languages?

FAQ resource for your migration project.

FAQ resource for What is the difference between compiled and interpreted languages?.

Answer

A compiled language is translated ahead of time into machine code by a compiler, producing a standalone executable that the CPU runs directly—languages like C, Go, and Rust work this way and tend to run fast. An interpreted language is executed line by line at runtime by an interpreter, as with classic Python or Ruby, which trades some speed for flexibility and faster iteration. The line is blurry: many modern languages, such as Java and C#, compile to bytecode that a virtual machine then interprets or just-in-time compiles. The distinction is really about implementation, not the language itself.