auto& parser = ChaiScript_Parser()
auto parce_success = parso& a = parser.ast()

assert_equal(eval(a), 7)

auto& childs = a>children.front().children
auto& node = childs[0]

auto& parser2 = ChaiScript_Parser()
parser2.parse("9", "INPUT")


a.children.front().replace_child(childs[0], parser2.ast())

assert_equal(eval(a), 13)
assert_equal(node.filename, "INPUT")



def my_fun()
{
  return 1;
}


assert_equal(true, my_fun.has_parse_tree());
assert_equal(false, `+`.has_parse_tree());

assert_throws("Function does not have a parse tree", fun() { `+`.get_parse_tree(); } );

auto& parsetree = my_fun.get_parse_tree();

assert_equal(1, eval(parsetree));

print(parsetree.text());
