Le mardi 10 août 2010 à 14:07 -0400, Christian Muise a écrit : > I really don't think that static compilation to Python > code is a good idea. It prevents any extension to the system > and makes > it very hard to maintain. It would be much more useful to > compute > known_facts_dict at import time and to have the possibility to > recompute > it at runtime if facts are added to the knowledge base. > > > This is a good discussion point. The stronger the compilation, the > harder it likely is going to be to computer (generally speaking). For > example, the known_facts_dict is quite intensive (few seconds at least > on a reasonable cpu...17 seconds on the netbook I'm currently using). > The whole intuition of knowledge compilation is that you do it offline > -- every time you import sympy for the first time seems to go against > this. > Hmm... I didn't know it was so slow. Intuitively, this feels wrong, can't you make it faster? If not, then I agree that it shouldn't be done at import time.
> > However, your point on modifying the assumptions is a good one -- > depending on the new facts that are added, things could be updated in > a certain way. But (and this is a big but), it would only ever have a > chance of working if new assumptions didn't add an inconsistency (you > can't assume contradictory things). This may sound obvious, but quite > often inconsistencies can be quite subtle. > > > Also, all the > known_facts_* clearly want to be refactored into a single > class. > > > Great idea. Should this be done prior to making it to trunk? Not necessarily. > > > PS. All tests run clean, and it's been rebased onto the > trunk btw. > > > > Not quite, there are test failures on some commit, for > instance HEAD~2. > > > Hrmz. Never knew the entire history should run clean. I may need > some help with the workflow for fixing a history of commits. The rule isn't applied very consistently, but it simplifies review and makes it easier to wade through old history or to do a git bisect. If you need help with git, ask on IRC. > > You should tidy up your history with git rebase -i. > Also, you haven't properly rebased on master (the fact that > your master > differs from the "true" master certainly doesn't help): you > have weird > merges between different versions of the trunk at the root of > your > branch and a merge between 2 versions of the same branch in > 'sat-solver'. > > > I had two prevailing trunks. Both were rebased on my origin's > master, which at the time of posting was a mirror of the sympy trunk. > One was then forked, and the other merged into it. I tried finding a > proper git workflow online that captured what I wanted to do, but was > largely unsuccessful. > Rule zero is to never commit or merge while you're on master. > How should I approach fixing the history? Here's what I would do, a priori: * Backup all your branches ('git co -b master-old master', etc.): this allows you to easily revert any operation that goes wrong * Reset master to be the real one: git co master; git reset --hard origin/master * Rebase the linear branches on master (git rebase master atms; git rebase master sat-solver) * Rebase soc-final on the rebased branches while preserving merge history: git rebase -p --onto atms atms-old soc-final; git rebase -p --onto sat-solver sat-solver-old soc-final If you check each operation with gitk, you should avoid hairy problems. > > > Thanks for the feedback -- large git mergers is new to me, so lots > of learning yet to be done this week ;). > > > Cheers, > Christian > -- > You received this message because you are subscribed to the Google > Groups "sympy-patches" group. > To post to this group, send email to sympy-patc...@googlegroups.com. > To unsubscribe from this group, send email to sympy-patches > +unsubscr...@googlegroups.com. > For more options, visit this group at > http://groups.google.com/group/sympy-patches?hl=en. -- You received this message because you are subscribed to the Google Groups "sympy-patches" group. To post to this group, send email to sympy-patc...@googlegroups.com. To unsubscribe from this group, send email to sympy-patches+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/sympy-patches?hl=en.