On 05/01/2011 23:22, Frank Mittelbach wrote:
>   >  I had a look back through the current code, to think about things more
>   >  generally. One thing that stuck me is that \box_new:N gives a void box,
>   >  \box_use_clear:N gives a void box but \box_clear:N gives an empty
>   >  (h)box.
> you sure? that shouldn't be the case. It is supposed to be set eq to
> \c_empty_box which in turn should be a void box in fact the plain TeX \voidb@x
> right now

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.)

What is clear is that 'empty' is a pretty bad choice of name here :-)
Joseph Wright