$values and $functions



Hi Maxima's list!

I'm working on an 'Inspector' pane for wxMaxima, where a user can  
view his variables and functions - basicly I get variable names and  
function names from Maxima's variables $values and $functions. I  
thought that these two variables hold user defined functions and  
variables, but then I found out how quickly they get polluted (for  
instance with a call to 'ode2' or 'load(stats);') with a large number  
of symbols. This makes my inspector rather useless.

Two questions:
1) What is the purpose of $values and $functions as they are  
implemented now? It seems inconsistent to bring in symbols from  
a .mac file, but not from a .lisp file (if I'm not mistaken) during  
'load()'. I, ofcourse, would like to see that $values and $functions  
would hold only variables and functions that were entered by the user  
in prompt. Do any Maxima internals depend on the contents of these two?

2) Is there any way to get only the variables and functions that the  
user defined himself, not by a 'load' call or some autoload?

Regards,
Ziga