I could spout off an opinionated rant, brainstorming why JS was the language web and software developers championed here as opposed to say, C# or Java, but they would all fall short of being in as good of a position as JS was (and still is) in the mid 2010’s and beyond. Anyway, that article might come sometime later down the road.
While Google has bragging rights for possessing the most used engine for JS development, other companies have raised bars of their own to remain competitive. WebKit was another engine developed a short time after V8 from within Apple. Originally intended for Apple’s Safari application, WebKit is a heavily optimized browser engine for not only JS, but a number of other languages and protocols such as C++. WebKit, an open-source engine has since gone through multiple iterations and has even been forked by Google to produce the current Chrome browser engine known as Blink.
Microsoft has also thrown a hat in the ring and forked a version of WebKit to be used with it’s Edge browser engine. This platform works exclusively on Windows x86-based devices currently and renders with Edge HTML. While not an excitingly open or popular platform, it has made some strides to bring faster load times and improve the overall end-user experience.
As technology improves at breakneck speed across the globe, don’t be surprised to see more browser engines emerging to claim the throne. Algorithms wax and wane in and out of fashion in the rather circuitously and can bring with them updates to the engines of these older models.
Getting familiar with just a couple of these engines has already helped me to sort of mentally trace where some of this data is going. For a newbie like me it’s still a little hard to fathom where a single bit of data takes off to become a whole program.
I am eager to see what the future of the relationship between interpretation and compilation holds. Even now, the two aren’t necessarily mutually exclusive. Most interpretive systems also perform a compilation duty during runtime, but this is not to say any steps have been skipped or deemed unnecessary. As programming libraries reach higher and higher above languages like C or even Assembly, more solutions to these industry standards continue being invented. For now, this is all I’ll need to get from point A to point B.