Hi Ronan!

On Sun, Jan 17, 2010 at 11:28 AM, Ronan Lamy <[email protected]> wrote:
> Happy New Year everyone!

Thanks, you too! And sorry for my late response.

>
> I met Fabian in Paris 2 weeks ago and we discussed the way forward with
> the new assumption system. We agreed that the complexity and size of

This is awesome, thanks for meeting with Fabian.

> class Basic is a serious roadblock. So the idea is to have Basic deal
> only with argument storage and expression manipulation (pattern
> matching, substitutions, etc.) and to move everything that requires
> arithmetic operations to be defined into a new class - provisionally
> named Expr - deriving from Basic. That way, Basic could be defined
> without referring to any of its subclasses and the amount of circular
> imports could be reduced.

What is the advantage of having two classes instead of one? Just so
that I understand the motivation better. Essentially you just want to
split Basic into two classes, so that each class is simpler to
maintain? I am missing why it is a roadblock, but since you both did
some work with assumptions already,  I guess there is a good reason
for that.

>
> I've started work on this in my github branch split_Basic
> [http://github.com/rlamy/sympy/tree/split_Basic] and it has been
> surprisingly painless: I didn't need to do much more than move methods
> in sympy/core/basic.py and replace most references to Basic with Expr
> elsewhere. Once all relevant methods have been pulled from Basic, I'll
> move Expr to its own file. There'll be some refactoring of tests to do
> and I hope it'll be possible to get full test coverage of Basic without
> referring to any subclass.
>
> I'm waiting for your comments.

Let me check the branch and report back soon.

Ondrej

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

Reply via email to