Hi Travis On 2014-03-11, Travis Scrimshaw <tsc...@ucdavis.edu> wrote: > I've been using #10963 in developing #14901 (Lie algebras). I first gave > 'Lie' as an axiom of NonAssociativeNonUnitalAlgebras (which I just asked > Nicolas for how to do it without really looking at the examples),
Good to get the opinion of someone who has actually used the axiom framework! > Now I feel that Volker's suggestion of making axioms into objects is a > somewhat heavy-handed approach to something which is basically to act as a > property, close to decorator interfaces in Java but here axiom determine > inheritance. So I'd think a list/tuple of strings specifying what axioms > are implemented is a better way to do it if we don't want to use Nicolas' > implementation (which I don't object to). In what location would you put the specification of an axiom and in what location would you put the documentation of a concrete implementation of the specified axiom, when axioms are lists of strings? > On that note, I think reviewers shouldn't hold up tickets because they > don't like the current implementation without providing a working > alternative and can demonstrate why it's better. Yes and no. We are talking here about a substantial change to a fundamental part of Sage potentially affecting most computations done in Sage. So, being paranoic makes sense. On the other hand, *because* it affects virtually everything in Sage, the fact that "make ptest" works indicates that the axiom framework is sane. Indeed, from my perspective, three aspects are holding up the review: Documentation, (in)transparency of the code, and the ease of defining/implementing axioms. The documentation has improved in the meantime. Concerning the third aspect, I think your testimonial is important. And moreover, I agree with you that the idioms for coding new axioms can be improved later, provided that the innards of the framework are sane (which I think is mostly the case). Best regards, Simon -- You received this message because you are subscribed to the Google Groups "sage-combinat-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-combinat-devel+unsubscr...@googlegroups.com. To post to this group, send email to sage-combinat-devel@googlegroups.com. Visit this group at http://groups.google.com/group/sage-combinat-devel. For more options, visit https://groups.google.com/d/optout.