yes, +1 for IntFloatNoneButNotStrangeNans as well. It seems like the best
we can do, and it probably covers 99.9% of the real world use cases


On Fri, Nov 15, 2013 at 8:07 AM, Maciej Fijalkowski <fij...@gmail.com>wrote:

> On Thu, Nov 14, 2013 at 11:07 PM, Armin Rigo <ar...@tunes.org> wrote:
> > Hi Antonio,
> >
> > On Thu, Nov 14, 2013 at 2:35 PM, Antonio Cuni <anto.c...@gmail.com>
> wrote:
> >> W_FloatObjectPresevingTheBits will be created only by operations like
> >> struct.unpack, cffi.cast, etc.
> >
> > That's not enough: if you read one such float into a variable and then
> > append that variable into another list, then the other list also needs
> > to record the fact that it contains special NaNs.
> >
> > It seems we could pick the following solution instead: keep
> > FloatStrategy, storing a RPython list of floats --- including possibly
> > special NaNs; and add FloatIntStrategy, which cannot store special
> > NaNs.  We check for the special NaNs when we add into a
> > FloatIntStrategy list, and when converting from FloatStrategy to
> > FloatIntStrategy.  For the latter case we do indeed need to check all
> > items, which sounds a bit pointless, but (1) this is already a good
> > progress over the current situation, which is that we need to allocate
> > a W_FloatObject per item and a new RPython list to hold them; and (2)
> > doing the check over all items upon conversion is actually the same
> > total amount of work as it would be if we checked each item as it was
> > added to the FloatStrategy list.
> >
> > (Fwiw, I'm also fond of the idea that it should actually be a
> > "FloatIntNoneStrategy"; it would improve the situation even for lists
> > of int-or-None.)
> >
> >
> > A bientôt,
> >
> > Armin.
> > _______________________________________________
> > pypy-dev mailing list
> > pypy-dev@python.org
> > https://mail.python.org/mailman/listinfo/pypy-dev
>
> +1 for IntFloatNoneButNotStrangeNans strategy
>
_______________________________________________
pypy-dev mailing list
pypy-dev@python.org
https://mail.python.org/mailman/listinfo/pypy-dev

Reply via email to