XDPXI's Documentation
Language Guide

Functions

Required version: Sponge >=1.0.0

Defining Functions

Use the def keyword to define a function:

def greet(name) {
  print("Hello, " + name);
}

greet("Alice");  # Hello, Alice

Parameters

Functions can take multiple parameters:

def add(a, b) {
  return a + b;
}

let result = add(5, 3);
print(result);  # 8

Return Values

Use the return keyword:

def multiply(x, y) {
  return x * y;
}

print(multiply(4, 5));  # 20

Functions without explicit return return null.

Scope

Variables declared in functions are locally scoped:

let global_var = 10;

def my_function() {
  let local_var = 5;
  print(global_var);  # 10
  print(local_var);   # 5
}

my_function();
print(local_var);  # Error: not defined

Global Variables

Use global to modify global variables within functions:

let counter = 0;

def increment() {
  global counter;
  counter += 1;
}

increment();
increment();
print(counter);  # 2

Main Function

If a main function is defined, it will be automatically executed:

def main() {
  print("Program started");
  # Your code here
}