Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #54075

Re: Language design

Date 2013-09-12 11:05 -0700
From Ethan Furman <ethan@stoneleaf.us>
Subject Re: Language design
References <522eb795$0$29999$c3e8da3$5496439d@news.astraweb.com> <5230D58E.9020508@markusrother.de> <5230DD68.2080703@stoneleaf.us> <5231FF23.20600@markusrother.de>
Newsgroups comp.lang.python
Message-ID <mailman.324.1379010392.5461.python-list@python.org> (permalink)

Show all headers | View raw


On 09/12/2013 10:51 AM, Markus Rother wrote:
> On 11.09.2013 23:15, Ethan Furman wrote:
>> On 09/11/2013 01:41 PM, Markus Rother wrote:
>>>       >>> () == []
>>>       False
>>>
>>>       But:
>>>
>>>       >>> bool(().__eq__([]))
>>>       True
>>
>> This is not a trap, this is simply the wrong way to do it.  The magic
>> methods (aka dunder methods) are there for Python to call, not you
>> (except under special circumstances, such as when writing your own
>> dunder methods).
>
> While trying to do it, I learned that its not the right way to do it.
> However, I was not satisfied with the fact, that there is no built in
> pure function for operations on primitives.  Such that
>
>>>> def get_do_stuff (fn):
> ...     def do_stuff(x,y):
> ...         return fn(x,y)
> ...     return do_stuff
>
> I understand that python is not a functional language, but it
> frustrates me at times.

--> import operator
--> operator.__all__  # public api methods are in __all__
['abs', 'add', 'and_', 'attrgetter', 'concat', 'contains', 'countOf', 'delitem', 'eq', 'floordiv', 'ge', 'getitem', 
'gt', 'iadd', 'iand', 'iconcat', 'ifloordiv', 'ilshift', 'imod', 'imul', 'index', 'indexOf', 'inv', 'invert', 'ior', 
'ipow', 'irshift', 'is_', 'is_not', 'isub', 'itemgetter', 'itruediv', 'ixor', 'le', 'length_hint', 'lshift', 'lt', 
'methodcaller', 'mod', 'mul', 'ne', 'neg', 'not_', 'or_', 'pos', 'pow', 'rshift', 'setitem', 'sub', 'truediv', 'truth', 
'xor']

Imports are a Good Thing; not everything has to be built in.

--
~Ethan~

Back to comp.lang.python | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Language design Steven D'Aprano <steve@pearwood.info> - 2013-09-10 06:09 +0000
  Re: Language design diverman <pavel@schon.cz> - 2013-09-09 23:59 -0700
  Re: Language design Ben Finney <ben+python@benfinney.id.au> - 2013-09-10 17:07 +1000
    Re: Language design Nobody <nobody@nowhere.com> - 2013-09-11 01:03 +0100
      Re: Language design Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-09-11 00:53 +0000
        Re: Language design Nobody <nobody@nowhere.com> - 2013-09-12 18:23 +0100
  Re: Language design Antoon Pardon <antoon.pardon@rece.vub.ac.be> - 2013-09-10 09:58 +0200
  Re: Language design Chris Angelico <rosuav@gmail.com> - 2013-09-10 20:20 +1000
  Re: Language design Chris Rebert <clp2@rebertia.com> - 2013-09-10 18:46 -0700
  Re: Language design Chris Angelico <rosuav@gmail.com> - 2013-09-11 14:21 +1000
  Re: Language design Burak Arslan <burak.arslan@arskom.com.tr> - 2013-09-11 13:38 +0300
    Re: Language design Neil Cerutti <neilc@norwich.edu> - 2013-09-11 14:32 +0000
      Re: Language design Chris Angelico <rosuav@gmail.com> - 2013-09-12 00:46 +1000
  Re: Language design Wayne Werner <wayne@waynewerner.com> - 2013-09-11 06:42 -0500
  Re: Language design Dave Angel <davea@davea.name> - 2013-09-11 12:05 +0000
  Re: Language design Ethan Furman <ethan@stoneleaf.us> - 2013-09-11 07:52 -0700
  Re: Language design Burak Arslan <burak.arslan@arskom.com.tr> - 2013-09-11 18:41 +0300
  Re: Language design Markus Rother <python@markusrother.de> - 2013-09-11 22:41 +0200
    Re: Language design Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-09-11 23:40 +0000
  Re: Language design Mark Janssen <dreamingforward@gmail.com> - 2013-09-11 14:22 -0700
  Re: Language design Mark Janssen <dreamingforward@gmail.com> - 2013-09-11 14:30 -0700
    Re: Language design Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-09-11 23:40 +0000
      Re: Language design Mark Janssen <dreamingforward@gmail.com> - 2013-09-11 17:49 -0700
        Re: Language design Steven D'Aprano <steve@pearwood.info> - 2013-09-12 05:33 +0000
          Re: Language design Mark Janssen <dreamingforward@gmail.com> - 2013-09-12 20:23 -0700
            Re: Language design Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-09-13 05:08 +0000
              Re: Language design Chris Angelico <rosuav@gmail.com> - 2013-09-13 17:39 +1000
              Re: Language design Mark Janssen <dreamingforward@gmail.com> - 2013-09-14 19:37 -0700
              Re: Language design Antoon Pardon <antoon.pardon@rece.vub.ac.be> - 2013-09-15 09:57 +0200
      Re: Language design Terry Reedy <tjreedy@udel.edu> - 2013-09-11 21:40 -0400
      Re: Language design Chris Angelico <rosuav@gmail.com> - 2013-09-12 11:41 +1000
  Re: Language design Ethan Furman <ethan@stoneleaf.us> - 2013-09-11 14:15 -0700
  RE: Language design "Prasad, Ramit" <ramit.prasad@jpmorgan.com.dmarc.invalid> - 2013-09-11 21:56 +0000
  Re: Language design Ben Finney <ben+python@benfinney.id.au> - 2013-09-12 09:16 +1000
  Please omit false legalese footers (was: Language design) Ben Finney <ben+python@benfinney.id.au> - 2013-09-12 09:22 +1000
    Re: Please omit false legalese footers (was: Language design) Grant Edwards <invalid@invalid.invalid> - 2013-09-12 20:12 +0000
  Re: Language design Chris Angelico <rosuav@gmail.com> - 2013-09-12 09:27 +1000
  Re: Language design Ben Finney <ben+python@benfinney.id.au> - 2013-09-12 09:19 +1000
  Re: Language design Terry Reedy <tjreedy@udel.edu> - 2013-09-11 19:51 -0400
  Re: Language design Mark Janssen <dreamingforward@gmail.com> - 2013-09-11 17:25 -0700
  Re: Language design Chris Angelico <rosuav@gmail.com> - 2013-09-12 10:31 +1000
    Re: Language design Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-09-12 02:33 +0000
      Re: Language design Roy Smith <roy@panix.com> - 2013-09-11 22:43 -0400
        Re: Language design Chris Angelico <rosuav@gmail.com> - 2013-09-12 12:58 +1000
        Re: Language design Steven D'Aprano <steve@pearwood.info> - 2013-09-12 05:08 +0000
  Re: Language design Mark Janssen <dreamingforward@gmail.com> - 2013-09-11 17:34 -0700
  Re: Language design Mark Janssen <dreamingforward@gmail.com> - 2013-09-11 17:37 -0700
  Re: Language design Chris Angelico <rosuav@gmail.com> - 2013-09-12 10:40 +1000
  Re: Language design Benjamin Kaplan <benjamin.kaplan@case.edu> - 2013-09-11 17:54 -0700
  Re: Language design Ben Finney <ben+python@benfinney.id.au> - 2013-09-12 10:57 +1000
  Re: Language design Joshua Landau <joshua@landau.ws> - 2013-09-12 05:17 +0100
  Re: Please omit false legalese footers (was: Language design) Skip Montanaro <skip@pobox.com> - 2013-09-12 04:27 -0500
  Re: Please omit false legalese footers (was: Language design) Oscar Benjamin <oscar.j.benjamin@gmail.com> - 2013-09-12 10:44 +0100
  Re: Language design Markus Rother <python@markusrother.de> - 2013-09-12 19:51 +0200
    Re: Language design Neil Cerutti <neilc@norwich.edu> - 2013-09-12 18:06 +0000
  Re: Language design Markus Rother <python@markusrother.de> - 2013-09-12 20:13 +0200
  Re: Language design Markus Rother <python@markusrother.de> - 2013-09-12 20:24 +0200
    Re: Language design Neil Cerutti <neilc@norwich.edu> - 2013-09-12 19:18 +0000
  Re: Language design Ethan Furman <ethan@stoneleaf.us> - 2013-09-12 11:05 -0700
  Re: Language design Ned Batchelder <ned@nedbatchelder.com> - 2013-09-12 14:37 -0400
  Re: Language design Terry Reedy <tjreedy@udel.edu> - 2013-09-12 14:46 -0400
  Re: Language design Chris Angelico <rosuav@gmail.com> - 2013-09-13 07:53 +1000
  Re: Language design Antoon Pardon <antoon.pardon@rece.vub.ac.be> - 2013-09-13 09:04 +0200
    Re: Language design Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-09-13 10:13 +0000
      Re: Language design Chris Angelico <rosuav@gmail.com> - 2013-09-13 21:16 +1000
      Re: Language design Antoon Pardon <antoon.pardon@rece.vub.ac.be> - 2013-09-13 13:28 +0200
      Re: Language design Terry Reedy <tjreedy@udel.edu> - 2013-09-13 15:32 -0400
      Re: Language design Chris Angelico <rosuav@gmail.com> - 2013-09-14 09:57 +1000
        Re: Language design Neil Cerutti <neilc@norwich.edu> - 2013-09-18 14:57 +0000
          Re: Language design Chris Angelico <rosuav@gmail.com> - 2013-09-19 01:02 +1000
            Re: Language design Neil Cerutti <neilc@norwich.edu> - 2013-09-18 15:08 +0000
              Re: Language design Chris Angelico <rosuav@gmail.com> - 2013-09-19 01:12 +1000
              Re: Language design William Ray Wing <wrw@mac.com> - 2013-09-18 12:58 -0400
                Re: Language design wxjmfauth@gmail.com - 2013-09-18 10:45 -0700
                Re: Language design Neil Cerutti <neilc@norwich.edu> - 2013-09-18 17:55 +0000
      Re: Language design Mark Janssen <dreamingforward@gmail.com> - 2013-09-13 17:28 -0700
      Re: Language design Vito De Tullio <vito.detullio@gmail.com> - 2013-09-14 07:25 +0200

csiph-web