On 07/01/2011, at 7:22 AM, Joseph Wright wrote:

> You are right: I was misled by 'empty' in the name. So things are consistent, but named awkwardly. Perhaps this should be '\c_unset_box', with \box_unset:N and \box_if_unset:N(TF) following naturally. (I still don't like \box_use_unset:N, as the concept of use-and-unset jars compared to the other variable types. However, the name would at least be consistent with the other functions.)

I prefer "void" or "clear" instead of "unset" (all work as noun and verb), but I agree with changing the names. I don't mind the existence of "\box_use_clear:N" (or whatever) but I can see your argument against it. Is there any non-neglible performance decrease from writing

    \box_use:N \l_tmpa_box
    \box_clear:N \l_tmpa_box


    \box_use_clear:N \l_tmpa_box

? If not, I'd be happy to drop the use_clear function for the reason of consistency, as you note.

-- Will