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.