Hi, I have now started to work on the level 0 of dense matrix. Please see the commit[1].
As I can see, the advantages of having domains is the reduced number of sympify calls. This was also one of the cliche Aaron pointed out in [2]. He pointed out that sympify may not be a viable solution in long term and we do need to add domains here. I am going to post profiling results in my blog tomorrow. Personally, I can see improvements like reduction in amount of function calls(no difference in asymptotic complexity). As far as I understand this project, I think this is really about simulating static types. I hope that I have implemented this thing right. Please see the tests for the expectation of function regarding inputs. I hope to get reviews from people more at home with these concepts than mine. My concern here is there are still some sympify calls (less than half than previous implementation). One can observe here that in almost all of the functions, I am using a tolist representation of matrix for operations. What I think is that this might be a good idea to store matrices this way internally. However the disadvantage here is that _handle_creation_matrix will have to execute one time to "present" output to user, which is very expensive. I may look at improving that function later that week. I am now sure that most of the code of new matrix module will be in Level 0. Best, -Saurabh [1] https://github.com/SaurabhJha/sympy/commit/9bad0377f932cd909043c8b757ff1cf941ce81d0 [2] https://github.com/sympy/sympy/pull/1840 -- You received this message because you are subscribed to the Google Groups "sympy" group. To unsubscribe from this group and stop receiving emails from it, send an email to sympy+unsubscr...@googlegroups.com. To post to this group, send email to sympy@googlegroups.com. Visit this group at http://groups.google.com/group/sympy. For more options, visit https://groups.google.com/groups/opt_out.