eval_clear(void)
{
    evalvars_clear();
    free_scriptnames();  // must come after evalvars_clear().
    free_locales();

    // autoloaded script names
    free_autoload_scriptnames();

    // unreferenced lists and dicts
    (void)garbage_collect(FALSE);

    // functions not garbage collected
    free_all_functions();
}
eval_clear(void)
{
    evalvars_clear();
    free_scriptnames();   
    free_locales();

     
    free_autoload_scriptnames();

     
    (void)garbage_collect(FALSE);

     
    free_all_functions();
}