Scientific Computing with the KotlinSci Open-source Framework

Authors

  • Stergios Papadimitriou

Abstract

KotlinSci is a framework for scientific computing for the Java Virtual Machine (JVM). The paper illustrates that KotlinSci can significantly facilitate and simplify the development of complex computational demanded scientific software at the JVM. The work compares Java based approaches with Kotlin ones, and illustrates the significant advantages of the enhanced flexibility of the Kotlin language. We illustrate that one of the more significant drawbacks of Java is its lack of operator overloading. Also, the nominal approach to functional programming of Java is not as flexible and convenient as the structural approach of Kotlin is. Kotlin also offers superb support for concurrency with its coroutines framework. Coroutines are exploited in KotlinSci to provide effective task oriented parallelism. The paper demonstrates that KotlinSci builds an effective and easy to use scientific programming environment by exploring the syntactic fluency and the strong object-functional features of Kotlin. JVM is a superb development framework that is based on advanced technology and algorithms. The advent of improved JVMs supporting more efficiently scientific computation tasks will enrich further the potential of KotlinSci for high-performance computing. Kotlin builds upon the JVM’s framework a modern language capable of confronting effectively a wide set of applications. In turn the presented KotlinSci open-source framework exploits the former ones and implements an easy to use scientific programming environment for the JVM.

Published

2022-09-12