Awesome
Glava
Glava is an esoteric programming language, built on top of a Java base, that is designed to be effective in code golf competitions.
Note: the Glava builds found here were previously referred to as Glava 2.X with its counterpart referred to as simply Glava. After July 2017, these builds are now under the Glava name with the older counterparts now known as Glava-Legacy.
Usage
Basic usage: java -jar glava.jar [command-line args]
. The file extension for Glava programs is .gl
by convention, but any extension should work. Also, Glava uses its own encoding, found here: Glava Code Page.
Command-line Flags:
-help
,-h
,-?
: Display the command-line reference sheet.-file [file]
,-f [file]
: Open a file and interpret it as Glava code in UTF-8.-gfile [file]
,-gf [file]
: Open a file and interpret it as Glava code in the Glava Code Page.-code [code]
,-c [code]
: Run a UTF-8 string as Glava code.-debug
,-d
: Enable debug mode. Note: must come before any other flags / arguments to avoid odd behaviour.
Examples:
- Display the help:
java -jar glava.jar -help
- Run a file (in
UTF-8
):java -jar glava.jar -file hello_world.gl
- Run a file (in the Glava Code Page):
java -jar glava.jar -gfile factorial.gl
- Debug a snippet of code:
java -jar glava.jar -debug -code "λ\"Hello, World!"
Why use Glava?
Even if you don't use Glava for code golf competitions, it still has some handy features, including:
- Multi-line strings.
- Shorthands for command-line arguments.
- Automatic
class
wrapping. - Automatic bracket closing.
- and more!
A full list of shorthands and useful features can found on the wiki.
External Resources
- Apache Commons: Useful library functions.
- Jalopy: Code beautifier.
- Glava Legacy: Previous version of Glava.
- Esolangs Page: Esolang wiki page.