pub fn exec<'a>(ast: &'a [Instruction], identifiers: &HashMap<usize, String>) {
    let mut locals: HashMap<usize, Object> = HashMap::new();
    let mut globals: HashMap<usize, Object> = HashMap::new();
    globals.insert(0, EMPTY);
    globals.insert(1, LEVEL);
    // Scopes 0, 1 and 2 are reserved
    // 0 is used to refer to the program scope
    // 1 signifies that a function scope has been exited
    // 2 signifies that a scope should not be exited
    exec_with(ast, &mut locals, &mut globals, PRG_SCOPE, identifiers);
}
/// Executes a Babalang AST in the global scope.
Executes a Babalang AST in the global scope.
Executes a Babalang AST in the global scope .
pub fn exec<'a>(ast: &'a [Instruction], identifiers: &HashMap<usize, String>) {
    let mut locals: HashMap<usize, Object> = HashMap::new();
    let mut globals: HashMap<usize, Object> = HashMap::new();
    globals.insert(0, EMPTY);
    globals.insert(1, LEVEL);
    // Scopes 0, 1 and 2 are reserved
    // 0 is used to refer to the program scope
    // 1 signifies that a function scope has been exited
    // 2 signifies that a scope should not be exited
    exec_with(ast, &mut locals, &mut globals, PRG_SCOPE, identifiers);
}
pub fn exec < ' a > ( ast : & ' a [ Instruction ] , identifiers : & HashMap < usize , String > ) { let mut locals : HashMap < usize , Object > = HashMap :: new ( ) ; let mut globals : HashMap < usize , Object > = HashMap :: new ( ) ; globals . insert ( 0 , EMPTY ) ; globals . insert ( 1 , LEVEL ) ; // Scopes 0, 1 and 2 are reserved // 0 is used to refer to the program scope // 1 signifies that a function scope has been exited // 2 signifies that a scope should not be exited exec_with ( ast , & mut locals , & mut globals , PRG_SCOPE , identifiers ) ; }
Executes a Babalang AST in the global scope.
Executes a Babalang AST in the global scope .
ast
&'a [Instruction]
identifiers
&HashMap<usize, String>
ast
&'a [Instruction]
identifiers
&HashMap<usize, String>