> > 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. 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? > > 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. > 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. How should I approach fixing the history? 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.