A high performance scripting language hosted on the JVM.
📖 English Documentation | 📖 ä¸æ–‡æ–‡æ¡£
AviatorScript
is a lightweight, high performance scripting language hosted on the JVM (and Android platform).
It compiles script to java byte code and evaluate it on the fly.
It’s not a game, it’s a programming language. Please refrain from sending me any more unsolicited emails.RTFM
+-*/
.Recommend version 5.2.6 and above.
enableSandboxMode
to enable sandbox mode etc.getFunctionNames
method to retrieve a list of functions and set the evaluation timeout, etc.<dependency>
<groupId>com.googlecode.aviator</groupId>
<artifactId>aviator</artifactId>
<version>{version}</version>
</dependency>
Check available versions at search.maven.org.
PATH
environment variable,such as ~/bin/aviator
:$ wget https://raw.githubusercontent.com/killme2008/aviator/master/bin/aviator
$ chmod u+x aviator
aviator
command,it will download the latest aviator jar to ~/.aviatorscript
directory:$ aviator
Downloading AviatorScript now...
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 153 100 153 0 0 111 0 0:00:01 0:00:01 --:--:-- 111
100 1373k 100 1373k 0 0 689k 0 0:00:01 0:00:01 --:--:-- 689k
Usage: java com.googlecode.aviator.Main [file] [args]
: java com.googlecode.aviator.Main -e [script]
: java com.googlecode.aviator.Main -v
hello.av
:p("Hello, AviatorScript!");
let a = tuple(1, 2, 3, 4, 5);
p("sum of a is: " + reduce(a, +, 0));
let date = new java.util.Date();
p("The year is: "+ getYear(date));
p("The month is: #{getMonth(date)}");
aviator
command:$ aviator hello.av
Hello, AviatorScript!
sum of a is: 15
The year is: 120
The month is: 3
A complex example is calculator.av which evaluates arithmetic expression in string.
Read user guide for details.