airlang 0.26.0

Air is a minimalist and universal programming language.
Documentation
use std::error::Error;

use airlang::cfg::comp::BaseCompCfg;
use airlang::cfg::prelude;
use airlang::semantics::core::Eval;
use airlang::semantics::func::DynFunc;
use airlang::semantics::val::Val;
use airlang::type_::Int;

#[test]
fn test_interpret() -> Result<(), Box<dyn Error>> {
    let mut cfg = BaseCompCfg::generate();
    let mut ctx = prelude(&mut cfg);
    let s = include_str!("../../benches/semantics/interpret.air");
    let src_val: Val = s.parse()?;
    let output = Eval.call(&mut cfg, &mut ctx, src_val);
    let expected = Val::Int(Int::from(3267).into());
    assert_eq!(output, expected);
    Ok(())
}