Koma
Koma is a scientific computing environment for Kotlin.
Project goals:
- Create a scientific programming environment that is similar in style to NumPy or MATLAB
- Enable writing numerical applications which can be deployed on JVM, JS, and native platforms
- Support using said applications from Python, MATLAB, Java, and other pre-existing codebases
- Use pluggable back-ends to enable optimized computation via pre-existing platform libraries
Project documentation
For more information on using Koma, please see the documentation
Building
To build from source, use one of the following commands:
# Java
./gradlew buildJvm
# Javascript
./gradlew buildJs
# Native (example executable, see examples/native/main.kt)
./gradlew buildNative
Output artifacts are left in the ./build
folder. For more information see building from source.
Related Projects
Koma has backends that wrap several other numerical projects on the JVM:
- Pure Java linear algebra: http://ejml.org/
- Pluggable native libs: https://github.com/fommil/matrix-toolkits-java
- Blas wrapper: http://jblas.org/
For a data analysis library similar to pandas, check out https://github.com/holgerbrandl/kplyr
For Kotlin statistical methods, check out https://github.com/thomasnield/kotlin-statistics