On Wed, Apr 4, 2012 at 4:47 PM, Joachim Durchholz <[email protected]> wrote: > Am 04.04.2012 23:30, schrieb Aaron Meurer: > >> And if we can get the reviews done >> quickly (a pipe dream I know), then it's really not an issue. > > > I have been planning to do more review work, but it's hard to find reviews > where I can be of help. I still have too many blind spots wrt. SymPy's > overall structure. > > For example, the C class is rather mysterious. Its mechanics can be inferred > from the code with some effort, but there's no documentation that explains > why it is there, why it is constructed the way it is, or what alternatives > were considered and were rejected for what reason (if only "the implementor > of the C class got the job done").
It's there because it's very difficult to import classes in the core, due to circular import problems. By the way, many parts of the core, like the class and singleton registries, use quite a bit of metaclass "magic", so I wouldn't necessarily recommend starting there if you want to understand more about the structure of SymPy. Indeed, the core's probably the most complicated part of the code base, at least as far as mysterious magic goes. It's also unfortunately one of the worst parts as far as documentation goes... If you look at some of the more extraneous parts, like functions, solvers, or simplify, I think you'll find the code much more approachable. Aaron Meurer > So I'd be unable to review the usefulness of a pull request that modifies C, > even if I could review it for obvious bugs or too little test coverage. > > > -- > You received this message because you are subscribed to the Google Groups > "sympy" group. > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected]. > For more options, visit this group at > http://groups.google.com/group/sympy?hl=en. > -- You received this message because you are subscribed to the Google Groups "sympy" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/sympy?hl=en.
