Functions
⚡ Regular Functions
HudHudScript supports both traditional and modern function syntax. Try it:
// English - Functions
// Function definition and usage examples
// Simple function
function greet() {
print("Hello World!");
}
// Function with parameters
function add(a, b) {
return a + b;
}
// Multi-parameter function
function calculate(num1, num2, operation) {
if (operation == "add") {
return num1 + num2;
} else if (operation == "subtract") {
return num1 - num2;
} else if (operation == "multiply") {
return num1 * num2;
} else if (operation == "divide") {
return num1 / num2;
} else {
return 0;
}
}
// Mathematical functions
function square(x) {
return x * x;
}
function cube(x) {
return x * x * x;
}
// Using functions
greet();
let result1 = add(5, 3);
print(result1);
let result2 = calculate(10, 5, "add");
print(result2);
let result3 = calculate(10, 5, "multiply");
print(result3);
let square_result = square(4);
print(square_result);
let cube_result = cube(3);
print(cube_result);
// Function composition
let total = add(square(3), cube(2));
print(total);
🎯 Arrow Functions
Modern, concise syntax for functions:
// English - Arrow Functions
// Modern, concise syntax for functions
// Arrow function - short syntax
let add = (a, b) => a + b;
let multiply = (x, y) => x * y;
print(add(5, 3)); // 8
print(multiply(4, 7)); // 28
// Arrow function with block
let calculate = (a, b) => {
let sum = a + b;
let product = a * b;
return sum + product;
};
let result = calculate(5, 3);
print(result); // 23 (8 + 15)
// Single parameter (no parentheses needed)
let square = x => x * x;
print(square(6)); // 36
// No parameters
let greet = () => "Hello!";
print(greet()); // Hello!
🔄 Higher-Order Functions
Functions that work with other functions:
// English - Higher-Order Functions
// Functions that work with other functions
// Function that returns a function
function multiplier(factor) {
return (x) => x * factor;
}
let double = multiplier(2);
let triple = multiplier(3);
print(double(5)); // 10
print(triple(5)); // 15
// Function that takes a function
function apply(fn, value) {
return fn(value);
}
print(apply(double, 10)); // 20
// Composition example
function compose(f, g) {
return (x) => f(g(x));
}
let addOne = (x) => x + 1;
let timesTwo = (x) => x * 2;
let addThenDouble = compose(timesTwo, addOne);
print(addThenDouble(5)); // 12 (5+1=6, 6*2=12)
🚀 Next Steps
Learn about Control Flow and AI Agents.