Adib Aroui
Adib Aroui

Reputation: 5067

What are the relationships between the notions: binary, interpretation, execution, compilation?

I deeply know that these are basic notions, but I would like to note that we can nowdays be 'web developpers' for years without understanding such mandatory notions (due to ready-made tools like Xampp, Wordpress...). I am giving three situations (among tens) where I encounter these concepts with no full understanding.

1. According to Wikipedia:

a binary data is a data in the binary form (bits and bytes) that cannot be interpreted.

But what is interpretation??

2. I also heard a time that PHP is:

a scripting language, not compiled but interpreted. It does not require any platform to be run.

Unlike Java or C #, you just get PHP binary, and run your script.

3. What about 'binary distribution' and 'compilation' as invoked in Apache HTTP server official documentation:

This documentation assumes that you are installing a binary distribution of Apache. If you want to compile Apache yourself (possibly to help with development or tracking down bugs), see Compiling Apache for Microsoft Windows.

Could someone please give to confused people of the community "once-and-for-all" definitions with examples. Highly invaluable.

Upvotes: 0

Views: 38

Answers (1)

codebox
codebox

Reputation: 20254

My understanding is as follows:

When used as a noun, binary refers to a compiled executable file - this is a file containing machine instructions in non-human readable form, which has previously been compiled, and can be run as an application.

compilation is the process of converting human-readable source code into a binary file, so that it can be executed.

execution is the process of running a program.

interpretation is the process of executing non-compiled code. In some programming languages the human-readable source code is executed directly, without first compiling it into binary machine code.

Upvotes: 1

Related Questions