Login | Register For Free | Help
Search for: (Advanced)

Mailing List Archive: Python: Dev

Product function patch [issue 1093]

 

 

Python dev RSS feed   Index | Next | Previous | View Threaded


ryan.freckleton at gmail

Sep 2, 2007, 9:34 PM

Post #1 of 25 (542 views)
Permalink
Product function patch [issue 1093]

Hello,

At one time Guido mentioned adding a built-in product() function to
cover some of the remaining use cases of the built-in reduce(). I
don't know if this function is still wanted or needed, but I've
created an implementation with tests and documentation at
http://bugs.python.org/issue1093 .

If it is still wanted, could someone review it and give me feedback on it?

Thanks,
--
=====
--Ryan E. Freckleton
_______________________________________________
Python-Dev mailing list
Python-Dev[at]python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com


martin at v

Sep 2, 2007, 10:27 PM

Post #2 of 25 (523 views)
Permalink
Re: Product function patch [issue 1093] [In reply to]

> At one time Guido mentioned adding a built-in product() function to
> cover some of the remaining use cases of the built-in reduce().

What is the use case for product()?

Regards,
Martin
_______________________________________________
Python-Dev mailing list
Python-Dev[at]python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com


skip at pobox

Sep 3, 2007, 5:24 AM

Post #3 of 25 (525 views)
Permalink
Re: Product function patch [issue 1093] [In reply to]

>> At one time Guido mentioned adding a built-in product() function to
>> cover some of the remaining use cases of the built-in reduce().

Martin> What is the use case for product()?

As I recall, there were basically two uses of reduce(), to sum a series or
(less frequently) to take the product of a series. sum() obviously takes
care of the first use case. product() would take care of the second.

Skip

_______________________________________________
Python-Dev mailing list
Python-Dev[at]python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com


guido at python

Sep 3, 2007, 7:37 AM

Post #4 of 25 (520 views)
Permalink
Re: Product function patch [issue 1093] [In reply to]

Actually, if you use Google code search, you'll find that multiplying
the numbers in a list doesn't have much use at all. After summing
numbers, joining strings is by far the most common usage -- which is
much better done with the str.join() method.

(PS. I rejected the issue; product() was proposed and rejected when
sum() was originally proposed and accepted, and I don't see anything
to change my mind.)

On 9/3/07, skip[at]pobox.com <skip[at]pobox.com> wrote:
>
> >> At one time Guido mentioned adding a built-in product() function to
> >> cover some of the remaining use cases of the built-in reduce().
>
> Martin> What is the use case for product()?
>
> As I recall, there were basically two uses of reduce(), to sum a series or
> (less frequently) to take the product of a series. sum() obviously takes
> care of the first use case. product() would take care of the second.
>
> Skip
>
> _______________________________________________
> Python-Dev mailing list
> Python-Dev[at]python.org
> http://mail.python.org/mailman/listinfo/python-dev
> Unsubscribe: http://mail.python.org/mailman/options/python-dev/guido%40python.org
>


--
--Guido van Rossum (home page: http://www.python.org/~guido/)
_______________________________________________
Python-Dev mailing list
Python-Dev[at]python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com


greg.ewing at canterbury

Sep 3, 2007, 3:59 PM

Post #5 of 25 (518 views)
Permalink
Re: Product function patch [issue 1093] [In reply to]

Ryan Freckleton wrote:
> At one time Guido mentioned adding a built-in product() function to
> cover some of the remaining use cases of the built-in reduce().

Speaking of such things, I was thinking the other day
that it might be useful to have somewhere in the stdlib
a full set of functions for doing elementwise operations
and reductions on the built-in array type.

This would make it possible for one to do efficient
bulk arithmetic when the need arises from time to time
without having to pull in a heavyweight dependency
such as Numeric or numpy.

--
Greg
_______________________________________________
Python-Dev mailing list
Python-Dev[at]python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com


guido at python

Sep 3, 2007, 7:57 PM

Post #6 of 25 (517 views)
Permalink
Re: Product function patch [issue 1093] [In reply to]

On 9/3/07, Greg Ewing <greg.ewing[at]canterbury.ac.nz> wrote:
> Speaking of such things, I was thinking the other day
> that it might be useful to have somewhere in the stdlib
> a full set of functions for doing elementwise operations
> and reductions on the built-in array type.
>
> This would make it possible for one to do efficient
> bulk arithmetic when the need arises from time to time
> without having to pull in a heavyweight dependency
> such as Numeric or numpy.

But what's the point, given that numpy already exists? Wouldn't you
just be redoing the work that numpy has already done?

--
--Guido van Rossum (home page: http://www.python.org/~guido/)
_______________________________________________
Python-Dev mailing list
Python-Dev[at]python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com


greg.ewing at canterbury

Sep 4, 2007, 2:18 AM

Post #7 of 25 (522 views)
Permalink
Re: Product function patch [issue 1093] [In reply to]

Guido van Rossum wrote:
> But what's the point, given that numpy already exists? Wouldn't you
> just be redoing the work that numpy has already done?

Sometimes I just want to do something simple like
adding two vectors together, and it seems unreasonable
to add the whole of numpy as a dependency just to
get that.

Currently Python has built-in ways of doing arithmetic,
and built-in ways of storing arrays of numbers efficiently,
but no built-in way of doing arithmetic on arrays of
numbers efficiently.

I'd like to see some of the core machinery of numpy moved
into the Python stdlib, and numpy refactored so that it
builds on that. Then there wouldn't be duplication.

--
Greg
_______________________________________________
Python-Dev mailing list
Python-Dev[at]python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com


steve at shrogers

Sep 4, 2007, 4:57 AM

Post #8 of 25 (521 views)
Permalink
Re: Product function patch [issue 1093] [In reply to]

Greg Ewing wrote:
> Guido van Rossum wrote:
>
>> But what's the point, given that numpy already exists? Wouldn't you
>> just be redoing the work that numpy has already done?
>>
>
> Sometimes I just want to do something simple like
> adding two vectors together, and it seems unreasonable
> to add the whole of numpy as a dependency just to
> get that. ...
>
> I'd like to see some of the core machinery of numpy moved
> into the Python stdlib, and numpy refactored so that it
> builds on that. Then there wouldn't be duplication.
>
Concur. Array processing would be a very practical addition to the
standard library. It's used extensively in engineering, finance, and
the sciences. It looks like they may find room in the OLPC XO for key
subsets of NumPy and Matplotlib. They want it both as a teaching
resource and to optimize their software suite as a whole. If they're
successful, we'll have a lot of young pythoneers expecting this
functionality.

# Steve
_______________________________________________
Python-Dev mailing list
Python-Dev[at]python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com


martin at v

Sep 4, 2007, 5:54 AM

Post #9 of 25 (519 views)
Permalink
Re: Product function patch [issue 1093] [In reply to]

> I'd like to see some of the core machinery of numpy moved
> into the Python stdlib, and numpy refactored so that it
> builds on that. Then there wouldn't be duplication.

I think this requires a PEP, and explicit support from the
NumPy people.

Regards,
Martin
_______________________________________________
Python-Dev mailing list
Python-Dev[at]python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com


guido at python

Sep 4, 2007, 7:38 AM

Post #10 of 25 (517 views)
Permalink
Re: Product function patch [issue 1093] [In reply to]

On 9/4/07, Steven H. Rogers <steve[at]shrogers.com> wrote:
> Concur. Array processing would be a very practical addition to the
> standard library. It's used extensively in engineering, finance, and
> the sciences. It looks like they may find room in the OLPC XO for key
> subsets of NumPy and Matplotlib. They want it both as a teaching
> resource and to optimize their software suite as a whole. If they're
> successful, we'll have a lot of young pythoneers expecting this
> functionality.

I still don't see why the standard library needs to be weighed down
with a competitor to numpy. Including a subset of numpy was considered
in the past, but it's hard to decide on the right subset. In the end
it was decided that numpy is too big to become a standard library.
Given all the gyrations it has gone through I definitely believe this
was the right decision.

--
--Guido van Rossum (home page: http://www.python.org/~guido/)
_______________________________________________
Python-Dev mailing list
Python-Dev[at]python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com


ncoghlan at gmail

Sep 4, 2007, 7:52 AM

Post #11 of 25 (518 views)
Permalink
Re: Product function patch [issue 1093] [In reply to]

Martin v. Löwis wrote:
>> I'd like to see some of the core machinery of numpy moved into the
>> Python stdlib, and numpy refactored so that it builds on that. Then
>> there wouldn't be duplication.
>
> I think this requires a PEP, and explicit support from the NumPy
> people.

Travis has actually been working on this off-and-on for the last couple
of years, including mentoring an SoC project last year. I believe PEP
3118 (the revised buffer protocol) was one of the major outcomes -
rather than having yet-another-array-type to copy data to and from in
order to use different libraries, the focus moved to permitting better
interoperability amongst the array types that already exist.

Once we support better interoperability at the data storage level, it
will actually become *more* useful to have a simple multi-dimensional
array type in the standard library as you could easily pass those
objects to functions from more powerful array manipulation libraries as
your needs become more complicated.

Cheers,
Nick.

--
Nick Coghlan | ncoghlan[at]gmail.com | Brisbane, Australia
---------------------------------------------------------------
http://www.boredomandlaziness.org
_______________________________________________
Python-Dev mailing list
Python-Dev[at]python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com


greg.ewing at canterbury

Sep 4, 2007, 1:58 PM

Post #12 of 25 (517 views)
Permalink
Re: Product function patch [issue 1093] [In reply to]

Martin v. Löwis wrote:
> I think this requires a PEP, and explicit support from the
> NumPy people.

Someone who knows more about numpy's internals would
be needed to figure out what the details should be
like in order to be usable by numpy. But I could write
a PEP about how what I have in mind would look from
the Python level.

--
Greg
_______________________________________________
Python-Dev mailing list
Python-Dev[at]python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com


greg.ewing at canterbury

Sep 4, 2007, 2:26 PM

Post #13 of 25 (512 views)
Permalink
Re: Product function patch [issue 1093] [In reply to]

Guido van Rossum wrote:
> I still don't see why the standard library needs to be weighed down
> with a competitor to numpy.

The way to get things done efficiently with an interpreted
language is for the language or its libraries to provide
primitives that work on large chunks of data at once, and
can be combined in flexible ways.

Python provides many such primitives for working with
strings -- the string methods, regexps, etc. But it doesn't
provide *any* for numbers, and that strikes me as an odd
gap in functionality.

What I have in mind would be quite small, so it wouldn't
"weigh down" the stdlib. You could think of it as an
extension to the operator module that turns it into
something useful. :-)

And, as I said, if it's designed so that numpy can build
on it, then it needn't be competing with numpy.

> Including a subset of numpy was considered
> in the past, but it's hard to decide on the right subset.

What I'm thinking of wouldn't be a "subset" of numpy, in
the sense that it wouldn't necessarily share any of the
numpy API from the Python perspective. All it would
provide is the minimum necessary primitives to get the
grunt work done.

I'm thinking of having a bunch of functions like

add_elementwise(src1, src2, dst, start, chunk, stride)

where src1, src2 and dst are anything supporting the
new buffer protocol. That should be sufficient to support
something with a numpy-like API, I think.

--
Greg
_______________________________________________
Python-Dev mailing list
Python-Dev[at]python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com


greg.ewing at canterbury

Sep 4, 2007, 2:30 PM

Post #14 of 25 (513 views)
Permalink
Re: Product function patch [issue 1093] [In reply to]

Nick Coghlan wrote:
> Travis has actually been working on this off-and-on for the last couple
> of years,

Well, yes, but that's concentrating on a different aspect
of things -- the data storage.

My proposal concerns what you can *do* with the data,
independent of the way it's stored. My idea and Travis's
would complement each other, I think.

--
Greg
_______________________________________________
Python-Dev mailing list
Python-Dev[at]python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com


martin at v

Sep 4, 2007, 2:42 PM

Post #15 of 25 (513 views)
Permalink
Re: Product function patch [issue 1093] [In reply to]

> What I have in mind would be quite small, so it wouldn't
> "weigh down" the stdlib.

If it's a builtin, it certainly would. Every builtin weighs
down the library, as it clutters the global(est) namespace.

> I'm thinking of having a bunch of functions like
>
> add_elementwise(src1, src2, dst, start, chunk, stride)
>
> where src1, src2 and dst are anything supporting the
> new buffer protocol. That should be sufficient to support
> something with a numpy-like API, I think.

This sounds like a topic for python-ideas.

Regards,
Martin
_______________________________________________
Python-Dev mailing list
Python-Dev[at]python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com


guido at python

Sep 4, 2007, 2:55 PM

Post #16 of 25 (512 views)
Permalink
Re: Product function patch [issue 1093] [In reply to]

By all means do write up a PEP -- it's hard to generalize from that one example.

On 9/4/07, Greg Ewing <greg.ewing[at]canterbury.ac.nz> wrote:
> Guido van Rossum wrote:
> > I still don't see why the standard library needs to be weighed down
> > with a competitor to numpy.
>
> The way to get things done efficiently with an interpreted
> language is for the language or its libraries to provide
> primitives that work on large chunks of data at once, and
> can be combined in flexible ways.
>
> Python provides many such primitives for working with
> strings -- the string methods, regexps, etc. But it doesn't
> provide *any* for numbers, and that strikes me as an odd
> gap in functionality.
>
> What I have in mind would be quite small, so it wouldn't
> "weigh down" the stdlib. You could think of it as an
> extension to the operator module that turns it into
> something useful. :-)
>
> And, as I said, if it's designed so that numpy can build
> on it, then it needn't be competing with numpy.
>
> > Including a subset of numpy was considered
> > in the past, but it's hard to decide on the right subset.
>
> What I'm thinking of wouldn't be a "subset" of numpy, in
> the sense that it wouldn't necessarily share any of the
> numpy API from the Python perspective. All it would
> provide is the minimum necessary primitives to get the
> grunt work done.
>
> I'm thinking of having a bunch of functions like
>
> add_elementwise(src1, src2, dst, start, chunk, stride)
>
> where src1, src2 and dst are anything supporting the
> new buffer protocol. That should be sufficient to support
> something with a numpy-like API, I think.
>
> --
> Greg
> _______________________________________________
> Python-Dev mailing list
> Python-Dev[at]python.org
> http://mail.python.org/mailman/listinfo/python-dev
> Unsubscribe: http://mail.python.org/mailman/options/python-dev/guido%40python.org
>


--
--Guido van Rossum (home page: http://www.python.org/~guido/)
_______________________________________________
Python-Dev mailing list
Python-Dev[at]python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com


steve at shrogers

Sep 4, 2007, 6:39 PM

Post #17 of 25 (513 views)
Permalink
Re: Product function patch [issue 1093] [In reply to]

Guido van Rossum wrote:
> I still don't see why the standard library needs to be weighed down
> with a competitor to numpy. Including a subset of numpy was considered
> in the past, but it's hard to decide on the right subset. In the end
> it was decided that numpy is too big to become a standard library.
> Given all the gyrations it has gone through I definitely believe this
> was the right decision.
A competitor to NumPy would be counter-productive, but including a core
subset in the standard library that NumPy could be built upon would add
valuable functionality to Python out of the box. It was probably the
best decision to not include NumPy when it was previously considered,
but I think it should be reconsidered for Python 3.x. While defining
the right subset to include has it's difficulties, I believe it can be
done. What would be a reasonable target size for inclusion in the
standard library?

# Steve

_______________________________________________
Python-Dev mailing list
Python-Dev[at]python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com


steve at shrogers

Sep 4, 2007, 6:56 PM

Post #18 of 25 (511 views)
Permalink
Re: Product function patch [issue 1093] [In reply to]

Greg Ewing wrote:
> Martin v. Löwis wrote:
>
>> I think this requires a PEP, and explicit support from the
>> NumPy people.
>>
>
> Someone who knows more about numpy's internals would
> be needed to figure out what the details should be
> like in order to be usable by numpy. But I could write
> a PEP about how what I have in mind would look from
> the Python level.
>
I'm confident that the NumPy developers would support this in
principle. If you want help with the PEP, I'm willing to help.


_______________________________________________
Python-Dev mailing list
Python-Dev[at]python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com


guido at python

Sep 4, 2007, 7:03 PM

Post #19 of 25 (512 views)
Permalink
Re: Product function patch [issue 1093] [In reply to]

On 9/4/07, Steven H. Rogers <steve[at]shrogers.com> wrote:
> Guido van Rossum wrote:
> > I still don't see why the standard library needs to be weighed down
> > with a competitor to numpy. Including a subset of numpy was considered
> > in the past, but it's hard to decide on the right subset. In the end
> > it was decided that numpy is too big to become a standard library.
> > Given all the gyrations it has gone through I definitely believe this
> > was the right decision.
> A competitor to NumPy would be counter-productive, but including a core
> subset in the standard library that NumPy could be built upon would add
> valuable functionality to Python out of the box. It was probably the
> best decision to not include NumPy when it was previously considered,
> but I think it should be reconsidered for Python 3.x. While defining
> the right subset to include has it's difficulties, I believe it can be
> done. What would be a reasonable target size for inclusion in the
> standard library?

What makes 3.0 so special? Additions to the stdlib can be considered
at any feature release. Frankly, 3.0 is already so loaded with new
features (and removals) that I'm not sure it's worth pile this onto
it.

That said, I would much rather argue with a detailed PEP than with yet
another suggestion that we do something. I am already doing enough --
it's up for some other folks to get together and produce a proposal.

--
--Guido van Rossum (home page: http://www.python.org/~guido/)
_______________________________________________
Python-Dev mailing list
Python-Dev[at]python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com


steve at shrogers

Sep 4, 2007, 7:35 PM

Post #20 of 25 (511 views)
Permalink
Re: Product function patch [issue 1093] [In reply to]

Guido van Rossum wrote:
> What makes 3.0 so special? Additions to the stdlib can be considered
> at any feature release. Frankly, 3.0 is already so loaded with new
> features (and removals) that I'm not sure it's worth pile this onto
> it.
>
I actually wrote 3.x, not 3.0. I agree that it makes no sense to add
anything more to 3.0.


_______________________________________________
Python-Dev mailing list
Python-Dev[at]python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com


robert.kern at gmail

Sep 4, 2007, 7:45 PM

Post #21 of 25 (511 views)
Permalink
Re: Product function patch [issue 1093] [In reply to]

Guido van Rossum wrote:
> On 9/4/07, Steven H. Rogers <steve[at]shrogers.com> wrote:
>> Guido van Rossum wrote:
>>> I still don't see why the standard library needs to be weighed down
>>> with a competitor to numpy. Including a subset of numpy was considered
>>> in the past, but it's hard to decide on the right subset. In the end
>>> it was decided that numpy is too big to become a standard library.
>>> Given all the gyrations it has gone through I definitely believe this
>>> was the right decision.
>> A competitor to NumPy would be counter-productive, but including a core
>> subset in the standard library that NumPy could be built upon would add
>> valuable functionality to Python out of the box. It was probably the
>> best decision to not include NumPy when it was previously considered,
>> but I think it should be reconsidered for Python 3.x. While defining
>> the right subset to include has it's difficulties, I believe it can be
>> done. What would be a reasonable target size for inclusion in the
>> standard library?
>
> What makes 3.0 so special? Additions to the stdlib can be considered
> at any feature release.

The 3.x compatibility break (however alleviated by 2to3) makes a nice clean
cutoff. The numpy that works on Pythons 3.x would essentially be a port from the
current numpy. Consequently, we could modify the numpy for Pythons 3.x to always
rely on the stdlib API to build on top of. We couldn't do that for the version
targeted to Pythons 2.x because we could only rely on its presence for 2.6+. I
don't mind maintaining two versions of numpy, one for Python 2.x and one for
3.x, but I don't care to maintain three.

I invite Greg and Steven and whoever else is interested to discuss ideas for the
PEP on numpy-discussion. I'm skeptical, seeing what currently has been
suggested, but some more details could easily allay that.

http://projects.scipy.org/mailman/listinfo/numpy-discussion

--
Robert Kern

"I have come to believe that the whole world is an enigma, a harmless enigma
that is made terrible by our own mad attempt to interpret it as though it had
an underlying truth."
-- Umberto Eco

_______________________________________________
Python-Dev mailing list
Python-Dev[at]python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com


steve at shrogers

Sep 4, 2007, 8:17 PM

Post #22 of 25 (513 views)
Permalink
Re: Product function patch [issue 1093] [In reply to]

Robert Kern wrote:
> I invite Greg and Steven and whoever else is interested to discuss ideas for the
> PEP on numpy-discussion. I'm skeptical, seeing what currently has been
> suggested, but some more details could easily allay that.
>
> http://projects.scipy.org/mailman/listinfo/numpy-discussion
>
Accepted, that's probably the best place for this to continue. Greg's
suggestion sounds plausible to me, but needs to be fleshed out.
_______________________________________________
Python-Dev mailing list
Python-Dev[at]python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com


guido at python

Sep 4, 2007, 8:18 PM

Post #23 of 25 (519 views)
Permalink
Re: Product function patch [issue 1093] [In reply to]

On 9/4/07, Robert Kern <robert.kern[at]gmail.com> wrote:
> The 3.x compatibility break (however alleviated by 2to3) makes a nice clean
> cutoff. The numpy that works on Pythons 3.x would essentially be a port from the
> current numpy. Consequently, we could modify the numpy for Pythons 3.x to always
> rely on the stdlib API to build on top of. We couldn't do that for the version
> targeted to Pythons 2.x because we could only rely on its presence for 2.6+. I
> don't mind maintaining two versions of numpy, one for Python 2.x and one for
> 3.x, but I don't care to maintain three.

I just had a discussion with Glyph "Twisted" Lefkowitz about this. He
warns that if every project using Python uses 3.0's incompatibility as
an excuse to make their own library/package/project incompatible as
well, we will end up with total pandemonium (my paraphrase). I think
he has a good point -- we shouldn't be injecting any more instability
into the world than absolutely necessary.

In any case, the rift is more likely to be between 2.5 and 2.6, since
2.6 will provide backports of most 3.0 features (though without some
of the accompanying cleanups, in order to also provide strong
backwards compatibility).

To be honest, I also doubt the viability of designing and implementing
something that would satisfy Greg Ewing's goals *and* be stable enough
in the standard library, in under a year. But as I said before, I
don't see much point in arguing much further until I see the PEP. I
may yet be convinced, but it will have to be a good design and a
well-argued proposal.

--
--Guido van Rossum (home page: http://www.python.org/~guido/)
_______________________________________________
Python-Dev mailing list
Python-Dev[at]python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com


robert.kern at gmail

Sep 4, 2007, 8:28 PM

Post #24 of 25 (512 views)
Permalink
Re: Product function patch [issue 1093] [In reply to]

Guido van Rossum wrote:
> On 9/4/07, Robert Kern <robert.kern[at]gmail.com> wrote:
>> The 3.x compatibility break (however alleviated by 2to3) makes a nice clean
>> cutoff. The numpy that works on Pythons 3.x would essentially be a port from the
>> current numpy. Consequently, we could modify the numpy for Pythons 3.x to always
>> rely on the stdlib API to build on top of. We couldn't do that for the version
>> targeted to Pythons 2.x because we could only rely on its presence for 2.6+. I
>> don't mind maintaining two versions of numpy, one for Python 2.x and one for
>> 3.x, but I don't care to maintain three.
>
> I just had a discussion with Glyph "Twisted" Lefkowitz about this. He
> warns that if every project using Python uses 3.0's incompatibility as
> an excuse to make their own library/package/project incompatible as
> well, we will end up with total pandemonium (my paraphrase). I think
> he has a good point -- we shouldn't be injecting any more instability
> into the world than absolutely necessary.

I agree. I didn't mean to imply that the 3.x version of numpy would be
incompatible to users of it, just that the codebase that implements it will be
different, whether it is automatically or manually translated.

Of course, if the API is introduced in 3.(x>0), we end up with the same problem
I wanted to avoid. Ah well. See you on the flip side of the PEP.

--
Robert Kern

"I have come to believe that the whole world is an enigma, a harmless enigma
that is made terrible by our own mad attempt to interpret it as though it had
an underlying truth."
-- Umberto Eco

_______________________________________________
Python-Dev mailing list
Python-Dev[at]python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com


greg.ewing at canterbury

Sep 5, 2007, 1:40 PM

Post #25 of 25 (512 views)
Permalink
Re: Product function patch [issue 1093] [In reply to]

Guido van Rossum wrote:
> By all means do write up a PEP -- it's hard to generalize from that one example.

I'll write a PEP as soon as I get a chance. But the
generalisation is pretty straightforward -- just replicate
that signature for each of the binary operations.

--
Greg
_______________________________________________
Python-Dev mailing list
Python-Dev[at]python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com

Python dev RSS feed   Index | Next | Previous | View Threaded
 
 


Interested in having your list archived? Contact lists@gossamer-threads.com
 
  Web Applications & Managed Hosting Powered by Gossamer Threads Inc.