Kill and related topics



Hi all.  I have been doing some thinking, and I have a few
comments/questions about kill and related topics, stemming from the
whole post_eval_functions effort.

a)  After thinking it over, I think perhaps it is OK that kill(all) (or
kill(post_eval_functions) for that matter) does not reset
post_eval_functions, since it will also not reset any other "system"
settings changed by the user.  This is consistent now thanks to Jim, so
it is probably OK.  A more intelligent rewrite of my processing
function should (I hope) avoid problems that might be caused by this.  

b)  However, along those lines, I would like to ask if a
reset(all)/reset([specific name]) command could be put in that would
reset all "system" settings to their defaults, but leave anything user
defined alone.  Something like this (fake) session:

(%i1) f(x) := a*x;
(%o1) 				  f(x) := a x
(%i2) post_eval_functions : [f];
(%o2) 				     [a f]
(%i3) kill(all);
(%o3) 				    f(done)
(%i1) post_eval_functions;
(%o1) 				    f([f])
(%i2) reset(post_eval_functions);
(%i3)                                done
(%i4) post_eval_functions;
(%o4)                                 []

This way, the user has the options of a) remove all user defined
quantites/functions/etc., but not all "setting" changes, b) removing
all "setting" changes but retaining all defined
quantities/functions/etc., or c) using both kill(all) and reset(all) to
return to the exact original Maxima state (optionally reset could
reload maxima-init.lisp and maxima-init.mac).

Does this functionality already exist and I have just missed it?  Does
it make sense to anybody else?

CY


	
		
__________________________________ 
Do you Yahoo!? 
Yahoo! Mail - You care about security. So do we. 
http://promotions.yahoo.com/new_mail