Welcome to Metis!


print("Hello World!")

Metis is a language that aims to be easy to sandbox, and easy to use while having many features from other languages. Its main inspiration is Lua, as well as some features from Python and Rust.

Check out the language overview to learn more about Metis, or take a look at the examples to see what Metis can do. If you want to embed Metis in your project, check out the API documentation.

Usage

The latest Metis release can be downloaded from Github. The release is JAR file that can be run with java -jar metis.jar. This requires at least Java 17 to be installed.

Here are all the command line arguments that Metis supports:

-i, --stdinRead the code from STDIN
-f <file>, --file <file>Read the code from a file
-c <code>, --code <code>Read the code from the arguments
-d, --debugEnable debug mode
-p, --print-chunkPrint a disassembly of the code to be run
-s, --syntax-highlightConvert the code into syntax-highlighted HTML

Building

Metis is written in Kotlin, and uses Gradle as its build system. To build Metis, you need to have Gradle installed. To build Metis, run the following command in the root directory:

./gradlew shadowJar

This will create a JAR file in metis-app/build/libs that can be run with java -jar metis.jar.

Changelog

0.4.0

0.3.0

0.2.0

0.1.1

0.1.0

Credits

Metis is made by Seggan.

This documentation in written in Papyri, made by Andrew Kay. The theme used for this documentation is the default Papyri theme.