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.
Pushkar Kulkarni is an open-source, server-side Swift developer currently spending a majority of his time on developing and maintaining the Kitura web services framework. He is also a contributor and committer on Apple's swift-corelibs-foundation project, which is an open source project to bring Swift's Foundation library to Linux and other platforms. Prior to his current stint with Swift, he has worked on the IBM's J9 Java Runtime, first on dynamic compilation technology (JIT) and then on the standard library (specialising in java.net and java.nio). He is a big fan of the Functional Programming paradigm and likes exploring languages and frameworks.
|Talks by tracks||Talks by session types||List of Speakers||Schedule|