On Fri, Sep 16, 2016 at 10:55 PM, Volker Braun <vbraun.n...@gmail.com> wrote:
> For tab completion and so on we want a list of "useful" GAP functions,
> excluding internal functions that are not meant for end users.
> Unfortunately, there isn't really a good way to get that from GAP. The best
> approach seems to be to look for the actually documented functions. Downside
> is that it is slow as it grinds though the documentation a lot. Which is why
> the result is cached, so you only have to do it once. You don't have the
> cache yet, so it'll take a bit.

It bugs me a bit that this happens at import time.

I wonder if this cache (and others like it) could be generated at build time...?

> On Friday, September 16, 2016 at 5:55:49 PM UTC+2, Jeroen Demeyer wrote:
>>
>> After doing some Sage development, I ran doctests and 2 GAP tests
>> failed. The reason:
>>
>> sage: from sage.libs.gap.assigned_names import *
>> Exiting Sage (CPU time 1m58.64s, Wall time 2m36.84s).
>>
>> This is almost 2 minutes of CPU time (so it cannot be blamed on I/O) in
>> a Sage session just doing this. This is a backtrace when I interrupted
>> the command earlier:
>>
>>
>>
>> /usr/local/src/sage-git/local/lib/python2.7/site-packages/sage/libs/gap/assigned_names.py
>> in <module>()
>>      139
>>      140
>> --> 141 FUNCTIONS = load_or_compute('functions', list_functions)
>>      142
>>      143
>>
>>
>> /usr/local/src/sage-git/local/lib/python2.7/site-packages/sage/libs/gap/assigned_names.py
>> in load_or_compute(name, function)
>>       65             return cPickle.load(f)
>>       66     else:
>> ---> 67         value = function()
>>       68         from sage.misc.temporary_file import atomic_write
>>       69         with atomic_write(filename) as f:
>>
>>
>> /usr/local/src/sage-git/local/lib/python2.7/site-packages/sage/libs/gap/assigned_names.py
>> in list_functions()
>>      135     """
>>      136     fnames = set(GLOBALS).difference(KEYWORDS)
>> --> 137     documented = Filtered(list(fnames), IsDocumentedWord)
>>      138     return tuple(sorted(documented.sage()))
>>      139
>>
>> /usr/local/src/sage-git/src/sage/libs/gap/element.pyx in
>> sage.libs.gap.element.GapElement_Function.__call__
>> (build/cythonized/sage/libs/gap/element.c:15720)()
>>     2006         try:
>>     2007             libgap_enter()
>> -> 2008             sig_on()
>>     2009             if n == 0:
>>     2010                 result = libGAP_CALL_0ARGS(self.value)
>>
>>
>> Any ideas what was happening here?
>
> --
> You received this message because you are subscribed to the Google Groups
> "sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to sage-devel+unsubscr...@googlegroups.com.
> To post to this group, send email to sage-devel@googlegroups.com.
> Visit this group at https://groups.google.com/group/sage-devel.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to