Le mardi 17 mai 2011 à 19:12 -0700, asmeurer a écrit :
> 
> On May 12, 11:13 pm, Aaron Meurer <asmeu...@gmail.com> wrote:
> > On Thu, May 12, 2011 at 10:19 PM, Ondrej Certik <ond...@certik.cz> wrote:
> > > On Thu, May 12, 2011 at 7:40 PM, Ronan Lamy <ronan.l...@gmail.com> wrote:
> > >> Le jeudi 12 mai 2011 à 19:22 -0700, Ondrej Certik a écrit :
> > >>> On Thu, May 12, 2011 at 5:28 PM, Ronan Lamy <ronan.l...@gmail.com> 
> > >>> wrote:
> > >>> > Le jeudi 12 mai 2011 à 16:06 -0700, Ondrej Certik a écrit :
> > >>> >> On Thu, May 12, 2011 at 3:49 PM, Aaron Meurer <asmeu...@gmail.com> 
> > >>> >> wrote:
> > >>> >> > Hi.
> >
> > >>> >> > There was a discussion over at
> > >>> >> >http://code.google.com/p/sympy/issues/detail?id=1721to rename the
> > >>> >> > Real class to Float, because the name fits the class better.  The
> > >>> >> > reasoning is that Real represents floating point numbers, not any 
> > >>> >> > real
> > >>> >> > number like sin(1) or 2*pi, and it is confusing to have the subtle
> > >>> >> > difference between Real and real in the docs.  See the discussion 
> > >>> >> > over
> > >>> >> > at that issue page for more info.
> >
> > >>> >> > How do people feel about this?  If it were to happen, it would 
> > >>> >> > happen
> > >>> >> > in the next release, which also breaks some other things in terms 
> > >>> >> > of
> > >>> >> > backwards compatibly.
> >
> > >>> >> It seems that most code uses some variation of Real already:
> >
> > >>> >> Sage: uses RealField and RealLiteral:
> >
> > >>> >> sage: a = 1.345
> > >>> >> sage: type(a)
> > >>> >> <type 'sage.rings.real_mpfr.RealLiteral'>
> >
> > >>> >> Mathematica uses 
> > >>> >> "Real":http://reference.wolfram.com/mathematica/ref/Real.html
> >
> > >>> > And their "Possible issues" section can be summed up with "Reals 
> > >>> > aren't
> > >>> > reals, reals aren't Reals". Do we need to repeat others' mistakes?
> >
> > >>> > Anyway, both Python and numpy call floats "float" which, I think, 
> > >>> > trumps
> > >>> > compatibility with Sage and Mathematica. Maple and Maxima use "float" 
> > >>> > as
> > >>> > well.
> >
> > >>> If Maple + Maxima both use float, I am ok with that. Do you have some
> > >>> reference for that? I didn't manage to find one for Maple.
> >
> > >> For Maple:
> > >>http://www.maplesoft.com/support/help/Maple/view.aspx?path=float
> >
> > >> For Maxima:
> > >>http://maxima.sourceforge.net/docs/manual/en/maxima_10.html
> >
> > > Thanks. This looks good. I am ok with Float too. If it is not too
> > > hard, we can deprecate Real(), e.g. something like:
> >
> > > class Real(Basic)
> >
> > >    def __eval__ /or __new__/ ()
> > >        deprecated
> > >        return Float(*args)
> >
> > > Ondrej
> >
> > Yeah, let's do that.
> >
> > Aaron Meurer
> 
> This would still break things like isinstance(expr, Real) and
> expr.is_Real (I suppose we could also create a deprecated property for
> the last one).
> 
> Ronan, do you have time to update your patch for this?

Yes, I can do it. The commit renaming Real to Float is ready, but I'm
not sure how to handle the deprecation. For isinstance(expr, Real), the
only thing we could do is to play tricks with ABCs and__subclasshook__
in 2.6+. For Real(...), it's probably easier to make it a just a
function:
def Real(*args, **kwargs):
    return Float(*args, kwargs)




-- 
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