pub fn _if(
    cond: Box<ASTNode>,
    a: Box<ASTNode>,
    b: Option<Box<ASTNode>>
) -> Box<ASTNode>