How programming languages are built

How programming languages are built

The concept, the paradox.

It is commonly known that programming languages are what we (as software engineers) use to communicate with machines when we want to build things. Have you however asked yourself how these languages themselves are built? It might sound like a self-reinforcing cycle but you need a programming language to build a programming language, binary language of 1s and 0s gave rise to the first languages.

These days, languages are built using other more advanced languages with "C" (a programming language) being a favored choice. However, when a language becomes somewhat matured you can use the language you're building to build itself (sounds weird right?), I'll explain it using biology, a child needs support, as a child becomes an adult, that same individual can become self reliant and even give rise to another individual (a child). That's how programming languages are built.

To bring it closer to home, let's examine VS code (a very popular code editor) for example, you'll realize that it is an application and it has grown in functionality, so much so that you can build something VS code or extend the functionality of VS code using VS code itself.

When you look closely you'll realize that software engineering and biology have a couple key things in common. One might say that humankind gave rise to programming languages using the same concepts that sustain our existence.