>From issue 2070. However even Symbol is not rebuildable like this.

On the other hand Symbol is rebuildable with eval(srepr(obj)). This is
the case because in ReprPrinter we have:

def _print_Symbol(self, expr):
    return "%s(%s)" % (expr.__class__.__name__, self._print(expr.name))

Obviously if `name` was part of `args` this would have worked
automatically. However `name` is a string so it can not be in args.

So which is more important? obj.__class__(*obj.args) == obj or having
everything in args being an instance of Basic? It does not seem
possible to have both.

By the way ReprPrinter does not look sustainable if it has to do
special cases for each class.

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To post to this group, send email to sympy@googlegroups.com.
To unsubscribe from this group, send email to 
sympy+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sympy?hl=en.

Reply via email to