> It may be nice to also add a "force" option for `unset' that makes it > actually unset the variable if it is `local'. Since this could be > useful in some cases and it won't be possible after the behaviour is > changed.
Clarification I meant that it should fully undeclare local variables in the current scope, not that it should be able to fully undeclare variables from other scopes. Now that I think about it, it does not really make sense to implement it like a "force" option. I think adding a "-l" option that behaves similarly to "-v", but only works on local varnames of the current scope and fully undeclares them would make more sense.