<div dir="ltr">Good discussion so far.  Please let me know if I can help with implementation or documentation.<div><br></div><br><div class="gmail_quote"><div dir="ltr">On Thu, Jul 20, 2017 at 8:40 AM INADA Naoki <<a href="mailto:songofacandy@gmail.com">songofacandy@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi, Victor.<br>
<br>
> Why not making abc faster instead of trying to workaround abc for perf<br>
> issue?<br>
<br>
Current ABC provides:<br>
<br>
a) Prohibit instantiating without implement abstract methods.<br>
b) registry based subclassing<br>
<br>
People want Java's interface only wants (a).  (b) is unwanted side effect.<br></blockquote><div><br></div><div>Right.  (b) is only unwanted because it requires metaclasses, and metaclasses put constraints on inheritance.  </div><div><br></div><div>I have switched to using the "AbstractBaseClass" class I defined above in my own code.  If that is the sort of solution that will be undertaken, then there is a question of what to call this class.</div><div><br></div><div>If instead, every class will get this functionality automatically (which is more elegant), then someone needs to show that performance is unaffected.</div><div><br></div><div>Also, this whole thing might not be that important if (as Guido implies) linters supplant this functionality.  Although, linters would not catch the rare case where classes are programatically-generated.</div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Additionally, even if CPython provide C implementation of ABCMeta,<br>
other Python implementations won't.<br>
So Abstract Class (not ABC) may be nice on such implementations too.<br>
<br>
I'm +1 to implement abc module in C.<br>
And I think (a) can be nice first step, instead of implement all at once.<br>
<br>
Regards,<br>
<br>
INADA Naoki  <<a href="mailto:songofacandy@gmail.com" target="_blank">songofacandy@gmail.com</a>><br>
_______________________________________________<br>
Python-ideas mailing list<br>
<a href="mailto:Python-ideas@python.org" target="_blank">Python-ideas@python.org</a><br>
<a href="https://mail.python.org/mailman/listinfo/python-ideas" rel="noreferrer" target="_blank">https://mail.python.org/mailman/listinfo/python-ideas</a><br>
Code of Conduct: <a href="http://python.org/psf/codeofconduct/" rel="noreferrer" target="_blank">http://python.org/psf/codeofconduct/</a><br>
<br>
--<br>
<br>
---<br>
You received this message because you are subscribed to a topic in the Google Groups "python-ideas" group.<br>
To unsubscribe from this topic, visit <a href="https://groups.google.com/d/topic/python-ideas/r2YLrIEQlig/unsubscribe" rel="noreferrer" target="_blank">https://groups.google.com/d/topic/python-ideas/r2YLrIEQlig/unsubscribe</a>.<br>
To unsubscribe from this group and all its topics, send an email to <a href="mailto:python-ideas%2Bunsubscribe@googlegroups.com" target="_blank">python-ideas+unsubscribe@googlegroups.com</a>.<br>
For more options, visit <a href="https://groups.google.com/d/optout" rel="noreferrer" target="_blank">https://groups.google.com/d/optout</a>.<br>
</blockquote></div></div>