Then, shouldn't it be changed by now? I am not a 'real' developer and I hold no knowledge of backward compatibility. (And I am kinda sorry for meddling in like this) But what I know is that these kind of inconsistencies will cause much more confusion and complexity in the future.
What I suggest is: 1. Make ImmutableDenseNDimArray and ImmutableSparseNDimArray subclass of Expr. 2. Make ImmutableSparseMatrix subclass of Expr. 3. Make Relational subclass of Basic, not Expr. Perhaps deprecating these and building new classes will be suitable? 2019년 12월 4일 수요일 오전 7시 18분 34초 UTC+9, Francesco Bonazzi 님의 말: > > > > On Monday, 2 December 2019 05:25:54 UTC+1, JS S wrote: >> >> >> Likewise, there exists no class such as 'NDimArrayAdd' class, making >> NDimArray subclass of Basic only. >> > > Technically there is *CodegenArrayElementwiseAdd *defined in > *sympy.codegen.array_utils > *which can be used to create an addition of N-dim arrays. > > The reason why *NDimArray* is a subclass of Basic only is that someone > suggested to make it an instance of Basic instead of Expr in a PR review, > IIRC. Don't expect any deep thought behind this decision. > -- 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 [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/sympy/7521dcef-b035-4d7d-aa7c-08b100697bcd%40googlegroups.com.
