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.

##
Advertising

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.