Yeah, just to be clear, while I'll argue pretty strongly against injecting Symbol I should say that it's a perfectly rational thing to do.
Clifford I'm actually pretty impressed that you touched this fairly deep issue. Have you been developing on SymPy long? On Fri, Apr 25, 2014 at 2:22 PM, Aaron Meurer <[email protected]> wrote: > Funny you should mention that, because that was actually the idea that > we came up with a while back that was considered the best (well at > least I considered it the best). See > https://groups.google.com/d/msg/sympy/pyzfmCq_thI/UwFLv_RDX2IJ. You're > starting to dive into a controversial topic here, which deals in the > core of the design of SymPy, so fair warning. > > The next best solution I think was to create a non-Expr Symbol and use > that, which would take care of Matthew's worries about assumptions and > so on. That should not be that difficult to do, I think. > > Aaron Meurer > > On Fri, Apr 25, 2014 at 12:34 PM, Clifford Wolf > <[email protected]> wrote: > > On Friday, April 25, 2014 6:33:26 PM UTC+2, Matthew wrote: > >> > >> Regarding Symbol in MatrixSymbol what we really need is a Basic that > just > >> holds a name/string. The current Symbol object does that plus a whole > lot > >> of other things that we don't need. Probably we just need a > String(Basic) > >> class or something similar. > > > > > > Just thinking out loud: What's about storing the name directly in > > MatrixSymbol.name and overloading MatrixSymbol.func to [return a closure > > that] inject[s] the name into a new instance. > > > > This would make sense because afaics the whole idea behind the .args > > interface is make it easy to implement generic transformations, and I > don't > > see why such transformations should ever want to change the name of a > > MatrixSymbol. In this sense the dimensions are the only 'arguments' to a > > MatrixSymbol. (The symbol name is afaics not an 'argument' of Symbol > objects > > either.) > > > > -- > > 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 post to this group, send email to [email protected]. > > Visit this group at http://groups.google.com/group/sympy. > > To view this discussion on the web visit > > > https://groups.google.com/d/msgid/sympy/26b50466-8966-49e0-94d1-075011a6a063%40googlegroups.com > . > > > > For more options, visit https://groups.google.com/d/optout. > > -- > 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 post to this group, send email to [email protected]. > Visit this group at http://groups.google.com/group/sympy. > To view this discussion on the web visit > https://groups.google.com/d/msgid/sympy/CAKgW%3D6LB2TqN_uBxS9hxJ7Q6Yd2Ww-JN7EjebMWbH8fej4UFkA%40mail.gmail.com > . > For more options, visit https://groups.google.com/d/optout. > -- 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 post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/sympy. To view this discussion on the web visit https://groups.google.com/d/msgid/sympy/CAJ8oX-H_cSZj-QBVKnNf3eTi8zeY-3dMRQG%3D6QsztuO03Az%2BDQ%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
