<p dir="ltr"><br>
On 21 Oct 2013 21:22, "R. David Murray" <<a href="mailto:rdmurray@bitdance.com">rdmurray@bitdance.com</a>> wrote:<br>
><br>
> On Mon, 21 Oct 2013 12:11:57 +0100, Paul Moore <<a href="mailto:p.f.moore@gmail.com">p.f.moore@gmail.com</a>> wrote:<br>
> > On 21 October 2013 11:59, R. David Murray <<a href="mailto:rdmurray@bitdance.com">rdmurray@bitdance.com</a>> wrote:<br>
> > > On Sun, 20 Oct 2013 19:49:24 -0700, Ethan Furman <<a href="mailto:ethan@stoneleaf.us">ethan@stoneleaf.us</a>> wrote:<br>
> > >> On 10/20/2013 07:42 PM, Raymond Hettinger wrote:<br>
> > >> ><br>
> > >> > In short, I recommend that efforts be directed at improving help() rather than limiting introspection by way of less clean coding practices.<br>
> > >><br>
> > >> +1<br>
> > ><br>
> > > I'm also +1 on improving help instead of using wrapper classes.<br>
> ><br>
> > Agreed. A wrapper function whose purpose is solely to tidy up help<br>
> > seems like a bad idea in general.<br>
> ><br>
> > I'm somewhat more sympathetic to Nick's point that the name the user<br>
> > types should be all-lowercase and a class would be mixed case, but on<br>
> > that I think it's actually the naming convention that should change<br>
> > (name classes/functions based on usage, not implementation). The rule<br>
> > to me is that changing the underlying implementation shouldn't affect<br>
> > the user interface.<br>
><br>
> +1.  I've run into this tension between the naming convention and<br>
> wanting to change the underlying API before, and I think the<br>
> naming convention gets in the way.</p>
<p dir="ltr">Right, I think we may want to reconsider that guideline, because I just realised it helped nudge me into introducing an outright bug: using wrapper functions as I did means help() on instances will pick up the private helper class which is definitely *not* what we want. (Perhaps we could relax the rule to require initial capitals for abstract types, but allow it to be skipped for concrete classes? That would better match what we actually do in the builtins and stdlib).</p>

<p dir="ltr">Regardless, lesson learned, I'll create an issue and put a patch on the tracker to create a public OO API for these as described in my previous message (but using the current names).</p>
<p dir="ltr">Cheers,<br>
Nick.</p>
<p dir="ltr">><br>
> --David<br>
> _______________________________________________<br>
> Python-Dev mailing list<br>
> <a href="mailto:Python-Dev@python.org">Python-Dev@python.org</a><br>
> <a href="https://mail.python.org/mailman/listinfo/python-dev">https://mail.python.org/mailman/listinfo/python-dev</a><br>
> Unsubscribe: <a href="https://mail.python.org/mailman/options/python-dev/ncoghlan%40gmail.com">https://mail.python.org/mailman/options/python-dev/ncoghlan%40gmail.com</a><br>
</p>