finx 0.1.0

A fast, lightweight embeddable scripting language
Documentation
#[cfg(test)]
mod tests {
    use finx::Finx;

    // Helper to capture stdout for assertions
    fn run_and_capture(source: &str) -> Vec<String> {
        let mut engine = Finx::new();
        engine.execute(source).expect("Execution failed");
        engine.get_output()
    }

    #[test]
    fn test_speed_fibonacci() {
        let src = r#"
    fn fib(n) {
        if n <= 1 {
            return n;
        }
        return fib(n - 1) + fib(n - 2);
    }
    print(fib(28));
    "#;
        let start = std::time::Instant::now();
        let output = run_and_capture(src);
        println!("Done in: {:?}\nOutput: {:?}", start.elapsed(), output);
    }

    #[test]
    fn test_speed_loop() {
        let src = r#"
    let num = 1_000_000;
    while num > 0 {
        num = num - 1;
    }
    "#;
        let start = std::time::Instant::now();
        let output = run_and_capture(src);
        println!("Done in: {:?}\nOutput: {:?}", start.elapsed(), output);
    }
}