Our interest in the Kotlin programming language should be there because it is fast moving towards becoming the universal programming language. What is a universal programming language? From a simplistic view, the expectation could be that one language is used for all types of programming. While that may be far-fetched in today's complex world, the expectation could be adjusted to one language becoming the dominant programming language. Most certainly, it is the single, most important language to master. This book is written to help with that objective.
In this introductory chapter, we will see how Kotlin is poised to become the next universal programming language. In particular, we will look into the following topics:
- Why can Kotlin be described as a better Java than any other language?
- How does Kotlin address areas beyond the Java world?
- What is Kotlin's winning strategy?
- What does this all mean for a smart developer?
Historically, different languages have used strategies appropriate for those times to become the universal programming languages:
- In the 1970s, C became the universal programming language. Prior to C, the programming languages of the world were divided between low-level and high-level languages, the former being the languages that were close to machine code and the latter being ones that were more concise and worked better for human understanding. The C programming language was developed as a single language that could work as a low-level and a high-level language. The Unix operating system was showcased as one that was built ground-up entirely in C, without needing another low-level language.
- In the 1990s, Java became the universal programming language with the Write Once Run Anywhere strategy. Prior to Java, developers needed to create different programs to run on different platforms (different operating systems running on different hardware needed different programs to run). However, with Java, programs could be written targeting a single platform, namely the Java Virtual Machine (JVM). The JVM is available across all the popular platforms and takes care of all platform-specific nuances. The Java language became the universal language by being the language in which to write programs for the JVM.
Another two decades have passed, and the stage is all set to welcome the next universal language. Let's examine Kotlin's strategy to become that.