2011/9/8 Joseph Wright <[log in to unmask]>: > Hello all, > > As part of the work to re-arrange LaTeX3 code into l3kernel, l3packages > and l3experimental, a number of functions were marked as deprecated. > This information was posted to the list some time ago. It's probably too late, but I'm quite sure that the removal of \tl_new:Nn, \ior_new:N and \iow_new:N should be reverted. It is universally considered good style to combine declaration and initialization of variables, and having two different commands for declaration and setting leads to awkward duplication. Regarding \io[rw]_new, without them it is is impossible to check for overwriting of stream names. Just like with all other variable types, these should be declared before usage. Also a \cs_new:N command is missing which reserves a "function" name without assigning it. Both \io[rw]_new:N and \cs_new:N can essentially be aliases for \chk_if_free_cs.