Skip to content
@jask-lang

jask script language

A highly readable and safe interpreted language

A secure way of scripting...

... or jask applies security knowledge! jask is a secure and highly readable interpreted language in early development. The interpreter is fully written in C# without other dependencies.

jask --allow-stdout
>>> set msg = "Hello World!"
>>> printLine(msg)
Hello World!

⭐ type inference

set num = 10 * 8
set str = "My string"

💪 strong type checking

function add(a: number, b: number)
    return a + b
endfunction

>>> add(3, "4")
Error: Function 'add' has no overload matching types (number, string)

🔒 Immutable by default, operations never mutate the original

>>> set myMap = {"name" = "Alice"}
>>> set updated = mapSet(myMap, "age", 29)

>>> myMap
["name" = "Alice"]
>>> updated
["name" = "Alice", "age" = 29]

❗ all external input is untrusted by default (and must be verified before using)

>>> set ri = readInput("Your age: ")
Your age: 29
>>> verify(ri.value, "number")
Result { type: OK, value: 29, error: nil }

jask is built on never trust, always verify. The interpreter has no permissions it is not explicitly given, making it the perfect sandbox for untrusted inputs and code.

Curious? Find the interpreter's implementation here. Afterwards, we recommend that you check out our tutorials to ease your introduction to the concepts of jask.

A collection of useful functions written completely in jask can be found at jcore. Want syntax highlighting for your IDE? We got you.

Pinned Loading

  1. interpreter interpreter Public

    Interpreter for the jask language

    C#

  2. jcore jcore Public

    Collection of modules and testcases directly written in jask

  3. tutorials tutorials Public

    A collection of tutorials for the jask language

Repositories

Showing 5 of 5 repositories

People

This organization has no public members. You must be a member to see who’s a part of this organization.

Top languages

Loading…

Most used topics

Loading…