Better Programming

Advice for programmers.

Follow publication

The Life of a Bytecode Language

Andy
Better Programming
Published in
Jan 10, 2022

What would happen if programming languages were kingdoms? Will there be a war between them? Who will win?

If you want to know, here’s a look at the comics I drew:

Once upon a time, there were two kingdoms in the programming world. One is: the Interpreted Kingdom.
Our residents basically look like this: source code, parser, abstract syntax tree and interpreted execution
The other kingdom is compiled kingdom
Compiled residents look like: Source code, compilation and linking, machine instructions, execute directly on the hardware
Two kingdoms lived in peace for years, with new languages coming in from time to time.
One day, a young man named Java reached a fork. He had to make a choice between two directions.
He was immersed in thought: to choose compiled kingdom where there’s a cross platform challenge or the interpreted kingdom where the execution speed is slow
Suddenly Java heard someone calling: Young man, how about join my Bytecode tribe? We can do compilation and interpretation
After that, the Byte-code Tribe went to war with the Interpreted Kingdom. They pinpointed the weakness of Interpreted Kingdom: interpreters had to go through AST for Interpreted execution, which is quite inefficient. The Byte-code Tribe launched a fierce attack.
The Interpreted Kingdom failed to defend itself and was losing ground.
The programming languages switched sides and joined the Bytecode kingdom.
Among them, languages like Clojure, Scala, Jython, JRuby, Grooby and Kotlin embraced Java bytecodes directly
Ruby PHP Perl Python and Lua created their own bytecodes
JavaScript was first brought to the Compiled Kingdom and then to the Byte-code Kingdom by V8 JavaScript engine.
The Microsoft Empire smelled danger, so it created its own byte-code MSIL and then ask C#, VB.NET and others to compile themselves: into byte-codes.
As the territory of the Byte-code Kingdom got larger, the Interpreted Kingdom had to face its decaying future.
The Byte-code Kingdom tried to keep on fighting to conquer the Compiled Kingdom. It wanted to be the only ruler. However, the Compiled Kingdom took hold of System Level Programming firmly. Key areas such as the OS (Operating System), the Internet, the database and Virtual Machine all belonged to the Complied Kingdom.
The walls were solid, the army was strong, The troop of the Byte-code Kingdom was no match for that!
Even worse, the foundation of the Byte-code Kingdom, Virtual Machine, was provided by the Compiled Kingdom. Once the supply was cut, the consequence could be fatal.
In the end, the Byte-code Kingdom decided to sue for peace with the Compiled Kingdom. They reached a peace agreement and split the territory.

Since then, the programming world became peaceful again. But will the peace be eternal? Which could be the next balance-breaking language (or kingdom)? Let’s wait and see.

Long live Byte-code!

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

Andy
Andy

Written by Andy

Explain programming with stories

Responses (4)

Write a response