Translators
When you get a piece of software, the files you receive depend on how it was translated. A compiled executable contains machine code only. The original source code is not included, so you cannot read the programmer's instructions or change them to suit yourself. You can run the program, but you cannot see how it works or adapt it.
Interpreted programs are usually supplied as source code. You can open the file, read the lines the programmer wrote and edit them. That might mean changing a setting, fixing a mistake or adding a feature. For example, a small quiz game might be sold as an executable that only runs, while a similar quiz shared as a Python file can be opened and changed so the questions are about your own topic.
| What you receive | Can you read it? | Can you adapt it? | Who benefits? |
|---|---|---|---|
| Compiled executable | No, machine code only | No | Developer: the source code is hidden, so it is harder to copy or tamper with the code |
| Interpreted program as source code | Yes, high-level code | Yes | Users and learners: they can understand, change and learn from it |
Whether the source code can be seen is a separate benefit or drawback from how the translator itself works. Hiding the source code protects the developer's work, while supplying it lets other people understand, adapt and learn from the program, and neither arrangement is automatically better. An advantage about a program being closed or open is a point about what you receive, not about the steps the translator took.
Edexcel GCSE Computer Science · Translators