The Embedded Software Engineer’s Primer: Compiled vs Interpreted Languages

In actuality there is a bit of a blurry line between what is considered a compiled language or an interpreted language. It’s not entirely black and white. For instance, Java toes the line by being compiled into Java bytecode but still executing on the Java Runtime Environment? It’s weird… Python code can also be compiled! However, this article will discuss the differences between compiled and interpreted languages as if they’re distinct.

There’s a bit more captured in an executable file other than simply the instructions of the program. One of these days I’ll break down the anatomy of an executable file! Today is not that day.

print("Hello, World!")

Interestingly enough, the python runtime environment is a compiled executable written in C! That fun fact doesn’t actually mean anything for this conversation but… It is interesting. Maybe that’s another discussion we can have about just how pervasive the C programming language actually is. C is so important to software, that even C is written in C!🤯

#include <stdio.h>int main(int argc, char** argv) {
printf("Hello, World!\n");
return 0;



Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store