Skip to content

gabrieljones/ScaLaMatrixRain

Repository files navigation

ScaLaMatrixRain

Matrix Digital Rain

Scala Lanterna Matrix Digital Rain

  • Lanterna allows you to write easy semi-graphical user interfaces in a text-only environment, very similar to the C library curses but with more functionality.

Run

./gradlew shadowJar && java -jar slmatrix/build/libs/slmatrix-all.jar

Native

Setup GraalVM

Install SDKMAN!

sdk install java 23.0.1-graalce

Compile

sdk use java 23.0.1-graalce
./gradlew nativeCompile --no-configuration-cache

ToDo

Options

Add flags for various options like character ranges, color, velocity vector, etc.

Native

Compile for multiple targets and architectures like Linux, Windows, and MacOS.

Make a proper GitHub release with the compiled binaries.

Make it available via Homebrew and Scoop.

GraalVM Recommendations

  • G1GC: Use the G1 GC ('--gc=G1') for improved latency and throughput.
  • PGO: Use Profile-Guided Optimizations ('--pgo') for improved throughput.
  • AWT: Use the tracing agent to collect metadata for AWT.
  • HEAP: Set max heap for improved and more predictable memory usage.
  • CPU: Enable more CPU features with '-march=native' for improved performance.

Versioning

Add axion-release-plugin for versioning and releasing.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages