The turn of the 21st century saw massive adoption of a new category of programming languages, pioneered by Java, running inside the Java Virtual Machine. The virtual machine promised platform independence, memory management and program safety, something which the then native languages like C/C++ lacked, at the cost of some performance.
Over the last decade, advances in compilation technology and memory management techniques have led to a great comeback of native languages. There are legitimate reasons for the meteoric rise of Modern Native Languages - Go, Swift and Rust - over the last few years. Program safety and memory management are baked into the compiled code (Go has a Garbage Collector). Powerful type checkers have helped make these languages very expressive, easily embracing the functional programming paradigm. Being native, they naturally tend to be well performant and have a low memory overhead.
We can say the modern native languages have struck a good balance between expressive power, speed and safety - aspects which have exhibited mutual trade-offs in the past. But are they really viable alternatives to languages to the JVM languages? This quickie will help the audience understand their positives and negatives.