title: Difference between `winfo child` and `winfo children`
body: <p>I was having a look at the Tk demo widget 8.5/8.6 and found the line inside:</p>
  
  <pre><code>eval destroy [winfo child .]
  </code></pre>
  
  <p>When I looked up <a href="http://www.tcl.tk/man/tcl8.4/TkCmd/winfo.htm" rel="nofollow"><code>winfo</code></a>, there was no <code>child</code> option, but there was a <code>children</code> option. I tested a few things with the two and they appear to be the same.</p>
  
  <pre><code>% package require Tk
  % pack [label .m1 -text "Hello"]
  % pack [label .m2 -text "World"]
  % puts [winfo child .]
  .m1 .m2
  % puts [winfo children .]
  .m1 .m2
  </code></pre>
  
  <p>Those two seem to be the same to me, but one is documented and the other isn't. Is there any difference or is that only a consequence of different versions of Tcl (it seems that <code>child</code> was used earlier and is now being replaced with <code>children</code> -perhaps because of a bug?-, although both behave roughly similarly)?</p>
  
  <p>If they are different, is there any reason why someone would use one instead of the other?</p>