dol 0.8.1

DOL (Design Ontology Language) - A declarative specification language for ontology-first development
// sex_basic.dol - Basic SEX system examples
// This file tests the complete SEX syntax

// Host imports (no body = WASM import)
sex fun vudo_print(ptr: i32, len: i32)
sex fun vudo_alloc(size: i32) -> i32

// Pure function - no effects allowed
fun add(a: i64, b: i64) -> i64 {
    return a + b
}

// Sex function with body - effects allowed
sex fun log_and_add(a: i64, b: i64) -> i64 {
    // vudo_print("Adding...", 10)  // Would call the import
    return a + b
}

// Sex block in pure function
fun compute_with_debug(x: i64) -> i64 {
    let result = x * 2
    sex {
        // vudo_print("Debug: result computed", 22)
        let debug_val = result
    }
    return result
}