Dear Jacob: All of the methods could appear, but I don't think it's a good idea to install them as core GAP functions in that form, for efficiency reasons. E.g., extracting a coefficient from a polynomial should be a O(1) operation, but it's O(degree) in your implementation, and I don't think it can ever be made better using the current GAP underlying format. We shouldn't encourage programmers to use asymptotically inefficient methods. Library methods should either perform high-level operations on the polynomial (which then means "not looking at coefficients individually"), or should be coded using an ext-rep of the polynomial.
Similarly, "Flatten" may be useful for end users, but it is almost certainly a mistake to use it inside library code, since it's essentially the same as "Concatenation", except that non-lists are allowed. In a library, one usually knows whether one has lists or non-lists, so one can use "Concatenation" directly. > if IsList(entry) then > Append( result, entry ); > else > Append( result, [entry] ); Here, this should be simply "Add(result,entry)". > fi; -- Prof. Dr. Laurent Bartholdi \ laurent.bartholdi<at>gmail<dot>com G.-A. Universität zu Göttingen \ Phone: +49 551 39 7826 Bunsenstraße 3-5 \ Secr: +49 551 39 7752 D-37073 Göttingen, Germany \ Fax: +49 551 39 22674 _______________________________________________ Forum mailing list Forum@mail.gap-system.org http://mail.gap-system.org/mailman/listinfo/forum