<div dir="ltr">Of course I&#39;m not discouraged =), rather convinced.. The feature&#39;s correct place is outside of the core as you suggested! As for getting the index from the docs, it is probably a good idea to look for that... Once I get some free time, I&#39;ll give it some more thought..<br>
<br>Thanks again!<br><br><div class="gmail_quote">On Sun, Aug 24, 2008 at 12:55 AM, Alex Martelli <span dir="ltr">&lt;<a href="mailto:aleaxit@gmail.com">aleaxit@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
You&#39;re welcome! &nbsp;I wasn&#39;t trying to discourage you -- I was trying to<br>
prompt you to do it the best way, as a third party open source project<br>
(perhaps a contributed one to iPython, etc). &nbsp;Brett suggests that the<br>
index might be already around somewhere (maybe just for the standard<br>
library, but that would be a start) so if you could locate it then the<br>
needed excepthook might not be too hard to write, etc, etc. &nbsp;However,<br>
it&#39;s definitely up to you!<br>
<br>
Alex<br>
<br>
On Sat, Aug 23, 2008 at 2:45 PM, Abdallah El Guindy<br>
<div><div></div><div class="Wj3C7c">&lt;<a href="mailto:abdallah.elguindy@gmail.com">abdallah.elguindy@gmail.com</a>&gt; wrote:<br>
&gt;&gt; Adding a package to the repositories searched by apt-get is a much<br>
&gt;&gt; higher-ceremony operation than copying a file into some sys.path<br>
&gt;&gt; directory or changing sys.path, so that indexing makes sense for<br>
&gt;&gt; apt-get but not for Python&#39;s imports -- I can imagine the poor Python<br>
&gt;&gt; interpreter churning away all the time updating the index all the<br>
&gt;&gt; time.<br>
&gt;<br>
&gt; You are definitely right about that, I totally missed this when first<br>
&gt; thinking about it...<br>
&gt;<br>
&gt;&gt; there is absolutely<br>
&gt;&gt; nothing to be gained by having the functionality inside the core<br>
&gt;&gt; rather than in a third-party package.<br>
&gt;<br>
&gt; I guess you are right once again.<br>
&gt;<br>
&gt;&gt; If and when your extension &quot;takes the Python world by storm&quot;<br>
&gt;<br>
&gt; I guess this is never gonna happen (that&#39;s why I probably tagged the feature<br>
&gt; minor).<br>
&gt;<br>
&gt; I did not realized at the beginning that it has as much technical<br>
&gt; complications.. Thanks for pointing that out, I&#39;m convinced that perhaps it<br>
&gt; is not a good idea after all.<br>
&gt;<br>
&gt; Thanks.<br>
&gt;<br>
&gt; On Sun, Aug 24, 2008 at 12:35 AM, Alex Martelli &lt;<a href="mailto:aleaxit@gmail.com">aleaxit@gmail.com</a>&gt; wrote:<br>
&gt;&gt;<br>
&gt;&gt; On Sat, Aug 23, 2008 at 2:10 PM, Abdallah El Guindy<br>
&gt;&gt; &lt;<a href="mailto:abdallah.elguindy@gmail.com">abdallah.elguindy@gmail.com</a>&gt; wrote:<br>
&gt;&gt; &gt; I believe there must be a way... Maybe by creating an index file for<br>
&gt;&gt; &gt; each<br>
&gt;&gt; &gt; module. I&#39;m not sure, but I think the number of packages on apt-get is<br>
&gt;&gt; &gt; much<br>
&gt;&gt; &gt; more than the number of python built-in modules (obviously I don&#39;t know<br>
&gt;&gt; &gt; their number), yet it is doable with the case of apt-get.<br>
&gt;&gt;<br>
&gt;&gt; Adding a package to the repositories searched by apt-get is a much<br>
&gt;&gt; higher-ceremony operation than copying a file into some sys.path<br>
&gt;&gt; directory or changing sys.path, so that indexing makes sense for<br>
&gt;&gt; apt-get but not for Python&#39;s imports -- I can imagine the poor Python<br>
&gt;&gt; interpreter churning away all the time updating the index all the<br>
&gt;&gt; time. &nbsp;And even then, the Python index WOULD still potentially miss<br>
&gt;&gt; some entries, because a Python module is vastly more dynamic than the<br>
&gt;&gt; totally-static repositories used by apt-get, where each package is<br>
&gt;&gt; mandated to very explicitly state what it requires, and what it<br>
&gt;&gt; provides.<br>
&gt;&gt;<br>
&gt;&gt; If you want to try your hand at this kind of extension, I recommend<br>
&gt;&gt; you do it as a pypi package -- since all you want is peculiar messages<br>
&gt;&gt; in response to some NameError or ImportError exceptions, you can hang<br>
&gt;&gt; your functionality neatly into sys.excepthook -- there is absolutely<br>
&gt;&gt; nothing to be gained by having the functionality inside the core<br>
&gt;&gt; rather than in a third-party package. &nbsp;Moreover, I would recommend<br>
&gt;&gt; targeting the extension (solely or primarily) at &quot;rich&quot; environments<br>
&gt;&gt; such as IDLE or ipython (<a href="http://ipython.scipy.org/moin/" target="_blank">http://ipython.scipy.org/moin/</a>), whose users<br>
&gt;&gt; already expect and obviously appreciate getting especially rich<br>
&gt;&gt; interactive functionality even if it comes at the potential cost of<br>
&gt;&gt; some overhead -- users of the Python built-in interactive interpreter<br>
&gt;&gt; are more likely to be after lean-and-mean functionality instead.<br>
&gt;&gt;<br>
&gt;&gt; If and when your extension &quot;takes the Python world by storm&quot;, you will<br>
&gt;&gt; have strong practical arguments to recommend its inclusion in some<br>
&gt;&gt; future version of Python -- its popularity will have proven that there<br>
&gt;&gt; is strong demand for that functionality, after all. &nbsp;Until such<br>
&gt;&gt; support does exist, it&#39;s hard to argue for including in the Python<br>
&gt;&gt; core offering something that can be done just as well as a 3rd party<br>
&gt;&gt; package, has no proven demand, AND presents potentially delicate<br>
&gt;&gt; tradeoffs in terms of implementation (is the user going to be asked to<br>
&gt;&gt; explicitly reindex each time they alter sys.path, or is the overhead<br>
&gt;&gt; of the reindexing going to be implicit in ANY alteration at all? &nbsp;etc,<br>
&gt;&gt; etc).<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; Alex<br>
&gt;<br>
&gt;<br>
</div></div></blockquote></div><br></div>