Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.python > #54681
| From | Jussi Piitulainen <jpiitula@ling.helsinki.fi> |
|---|---|
| Newsgroups | comp.lang.python |
| Subject | Re: Functional Programming and python |
| Date | 2013-09-24 10:42 +0300 |
| Organization | University of Helsinki |
| Message-ID | <qot38ouk6mc.fsf@ruuvi.it.helsinki.fi> (permalink) |
| References | (2 earlier) <mailman.170.1375562619.1251.python-list@python.org> <c45c6fe3-b79c-4d14-9c89-b462808d7e32@googlegroups.com> <ba94102b-18b6-4850-ac85-032b0fe2fa75@googlegroups.com> <mailman.277.1379960704.18130.python-list@python.org> <840ba5b2-761b-4f89-990b-75218e3cd7fb@googlegroups.com> |
rusi writes: > Without resorting to lambdas/new-functions: > With functools.partial one can freeze any subset of a > function(callable's) parameters. > > In Haskell one can only freeze the first parameter or at most with > a right section the second You have an f of type A -> B -> C -> D -> E in Haskell, you can freeze the first three parameters by calling it with three arguments. These are equivalent: f a b c d (f a b c) d (f a b) c d (f a) b c d So it's any initial sequence of arguments, not just the first. And I thought such types were preferred over A * B * C * D -> E in Haskell, so you tend to get this for free. Not sure of the syntax here - it's been long since I did anything at all with Haskell. A difference seems to be that in Python, a call can refer to named parameters. This gives functools.partial some power over Haskell. Another difference is that the value of functools.partial is always a function that needs to be called with the remaining arguments, even if there are none. Both the creation and the evaluation of the curried functions just happens in Haskell. (I also think that the word "currying" used to refer to what Haskell does and it's an extension to use it to mean any partial evaluation.)
Back to comp.lang.python | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Where to suggest improvements in the official Python documentation? Aseem Bansal <asmbansal2@gmail.com> - 2013-08-03 10:53 -0700
Re: Where to suggest improvements in the official Python documentation? Joel Goldstick <joel.goldstick@gmail.com> - 2013-08-03 14:23 -0400
Re: Where to suggest improvements in the official Python documentation? Terry Reedy <tjreedy@udel.edu> - 2013-08-03 16:43 -0400
Re: Where to suggest improvements in the official Python documentation? Aseem Bansal <asmbansal2@gmail.com> - 2013-08-04 09:30 -0700
Re: Where to suggest improvements in the official Python documentation? Joel Goldstick <joel.goldstick@gmail.com> - 2013-08-04 14:34 -0400
Re: Where to suggest improvements in the official Python documentation? Aseem Bansal <asmbansal2@gmail.com> - 2013-08-20 07:22 -0700
Re: Where to suggest improvements in the official Python documentation? Joel Goldstick <joel.goldstick@gmail.com> - 2013-08-20 10:57 -0400
Functional Programming and python rusi <rustompmody@gmail.com> - 2013-09-22 19:21 -0700
Re: Functional Programming and python Vito De Tullio <vito.detullio@gmail.com> - 2013-09-23 20:24 +0200
Re: Functional Programming and python Jussi Piitulainen <jpiitula@ling.helsinki.fi> - 2013-09-24 10:06 +0300
Re: Functional Programming and python rusi <rustompmody@gmail.com> - 2013-09-24 00:08 -0700
Re: Functional Programming and python Jussi Piitulainen <jpiitula@ling.helsinki.fi> - 2013-09-24 10:42 +0300
Re: Functional Programming and python rusi <rustompmody@gmail.com> - 2013-09-24 05:14 -0700
Re: Functional Programming and python Jussi Piitulainen <jpiitula@ling.helsinki.fi> - 2013-09-24 17:51 +0300
Re: Functional Programming and python rusi <rustompmody@gmail.com> - 2013-09-24 08:07 -0700
Re: Functional Programming and python Chris Angelico <rosuav@gmail.com> - 2013-09-25 01:26 +1000
Re: Functional Programming and python rusi <rustompmody@gmail.com> - 2013-09-24 10:25 -0700
Re: Functional Programming and python Franck Ditter <nobody@nowhere.org> - 2013-09-30 19:04 +0200
Re: Functional Programming and python Chris Angelico <rosuav@gmail.com> - 2013-10-01 03:17 +1000
Re: Functional Programming and python Neil Cerutti <neilc@norwich.edu> - 2013-09-30 18:36 +0000
Re: Functional Programming and python Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-10-01 00:14 +0000
Re: Functional Programming and python Neil Cerutti <neilc@norwich.edu> - 2013-10-01 13:59 +0000
Re: Functional Programming and python Piet van Oostrum <piet@vanoostrum.org> - 2013-09-30 14:55 -0400
Re: Functional Programming and python Antoon Pardon <antoon.pardon@rece.vub.ac.be> - 2013-09-30 22:37 +0200
Re: Functional Programming and python Piet van Oostrum <piet@vanoostrum.org> - 2013-10-01 13:31 -0400
Re: Functional Programming and python Antoon Pardon <antoon.pardon@rece.vub.ac.be> - 2013-09-30 20:29 +0200
Re: Functional Programming and python Tim Chase <python.list@tim.thechases.com> - 2013-09-30 16:02 -0500
Re: Functional Programming and python Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-10-01 00:41 +0000
Re: Functional Programming and python alex23 <wuwei23@gmail.com> - 2013-10-01 11:03 +1000
Re: Functional Programming and python Terry Reedy <tjreedy@udel.edu> - 2013-09-30 21:03 -0400
Re: Functional Programming and python rusi <rustompmody@gmail.com> - 2013-09-30 18:36 -0700
Re: Functional Programming and python Chris Angelico <rosuav@gmail.com> - 2013-10-01 17:28 +1000
csiph-web