devxlogo

The Next System Programming Language

The Next System Programming Language

Innovation in programming language design has been very visible over the last two decades. Java was the catalyst. It introduced many novel concepts such as garbage collection, the Java Virtual Machine and real cross-platform development to the mainstream. It also had cool applets. A few years later Microsoft came out with C# and a little later the scene exploded with dynamic languages like Python and Ruby gaining a lot of traction and real world success. Then, a lot of other languages piggybacked on the JVM and of course JavaScript became the de-facto language of the web. But in the frenzy, good old static, compiled languages were left behind. C++ took its time trying to get with the program and there were no other contenders for the main stage (D is nice, but never became popular).

Enter Mozilla – Mozilla has always created innovative stuff. Firefox was built in C++ on a technology called XPCOM (Cross Platform Component Object Model). This took Microsoft’s very successful COM technology and created a cross-platform version from scratch. A couple of independent cool products were even developed on top of it (Python IDE Komodo from ActiveState). But, it was a very complicated piece of software.

Fast forward to today and Mozilla is building a new prototype browser using a new language of its own making, known as Rust. Rust is very unique. It brings memory management to the front and in the process also takes care of concurrent programming. It’s able to detect a slew of issues at compile time that traditionally were discovered only at runtime. It is said – tongue in cheek – that if your program compiles it is correct. The problem is that getting a Rust program to compile is a non-trivial adventure. I played with Rust a little bit and it requires a lot of persistence. Right now, version 1.3 is out. There is an enthusiastic community around Rust and a lot of things are done right. They put a lot of emphasis on documentation. There is support for projects and packaging is not an afterthought (Python’s Achilles’ heel). Rust has great integration with C and other languages, so you can leverage many existing libraries.

I believe Rust is going to be a major player where critical, secure and performance-sensitive code is required. Give it a try, but don’t count on it for serious production code just yet.

devxblackblue

About Our Editorial Process

At DevX, we’re dedicated to tech entrepreneurship. Our team closely follows industry shifts, new products, AI breakthroughs, technology trends, and funding announcements. Articles undergo thorough editing to ensure accuracy and clarity, reflecting DevX’s style and supporting entrepreneurs in the tech sphere.

See our full editorial policy.

About Our Journalist