Type inferred, functional, concise, written and interopable with Rust, designed for embedding.

Statically typed - Static typing makes it easier to write safe and efficient interfaces between gluon and the host application.

Type inference - Type inference ensures that types rarely have to be written explicitly giving all the benefits of static types with none of the typing.

Simple embedding - Marshalling values to and from gluon requires next to no boilerplate, allowing functions defined in Rust to be directly passed to gluon.

UTF-8 by default - Gluon supports unicode out of the box with utf-8 encoded strings and unicode codepoints as characters.

Separate heaps - Gluon is a garbage-collected language but uses a separate heap for each executing gluon thread. This keeps each heap small, reducing the overhead of the garbage collector.

Thread safe - Gluon is written in Rust, which guarantees thread safety. Gluon keeps the same guarantees, allowing multiple gluon programs to run in parallel .

let factorial n : Int -> Int =
    if n < 2
    then 1
    else n * factorial (n - 1)

factorial 10
Information updated 01/25/18
View Comments