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


Groups > comp.lang.python > #53936

Re: Language design

References <522eb795$0$29999$c3e8da3$5496439d@news.astraweb.com>
Date 2013-09-10 18:46 -0700
Subject Re: Language design
From Chris Rebert <clp2@rebertia.com>
Newsgroups comp.lang.python
Message-ID <mailman.230.1378863964.5461.python-list@python.org> (permalink)

Show all headers | View raw


* No explicit variable declarations (modulo `global`+`nonlocal`) means
that variable name typos can't be reliably detected at compile-time.
* The value of the loop variable at call-time for functions defined
within a loop trips people up.
* No self-balancing tree datatype of any kind is included in the std lib.
* Function scope rather than block scope (e.g. `while` doesn't
introduce a new scope) [Personally, I don't have much of a problem
with this, but some people do.]
* No anonymous block syntax (cf. Ruby or Smalltalk). Makes it
harder/uglier to define/use custom control structures. The `with`
statement would have been unnecessary.

Cheers,
Chris


On Mon, Sep 9, 2013 at 11:09 PM, Steven D'Aprano <steve@pearwood.info> wrote:
> Some time ago, Tom Christiansen wrote about the "Seven Deadly Sins of
> Perl":
>
> http://www.perl.com/doc/FMTEYEWTK/versus/perl.html
>
>
> What design mistakes, traps or gotchas do you think Python has? Gotchas
> are not necessarily a bad thing, there may be good reasons for it, but
> they're surprising.
>
> To get started, here are a couple of mine:
>
>
> - Python is so dynamic, that there is hardly anything at all that can be
> optimized at compile time.
>
> - The behaviour of mutable default variables is a gotcha.
>
> - Operators that call dunder methods like __add__ don't use the same
> method resolution rules as regular methods, they bypass the instance and
> go straight to the type, at least for new-style classes.
>
>
>
> --
> Steven
> --
> https://mail.python.org/mailman/listinfo/python-list

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