Re: [Python-Dev] HAVE_FSTAT?

2013-05-18 Thread Antonio Cavallo
I've had a quick look with grep -R HAVE_ * | egrep '[.]c:'. Modules/posixmodule.c has HAVE_UTIME_H and it might be standard libc on all posix platforms. Objects/obmalloc.c has HAVE_MMAP… but I guess that's fine given other platforms might not have such facility. Depending on the granularity

[Python-Dev] PEP 442: Safe object finalization

2013-05-18 Thread Antoine Pitrou
Hello, I would like to submit the following PEP for discussion and evaluation. Regards Antoine. PEP: 442 Title: Safe object finalization Version: $Revision$ Last-Modified: $Date$ Author: Antoine Pitrou solip...@pitrou.net Status: Draft Type: Standards Track Content-Type: text/x-rst Created:

Re: [Python-Dev] PEP 442: Safe object finalization

2013-05-18 Thread Nick Coghlan
On Sat, May 18, 2013 at 6:59 PM, Antoine Pitrou solip...@pitrou.net wrote: Resurrection The process by which a finalizer creates a new reference to an object in a CI. This can happen as a quirky but supported side-effect of ``__del__`` methods. I really like the PEP overall, but

Re: [Python-Dev] PEP 442: Safe object finalization

2013-05-18 Thread Antoine Pitrou
On Sat, 18 May 2013 21:05:48 +1000 Nick Coghlan ncogh...@gmail.com wrote: On Sat, May 18, 2013 at 6:59 PM, Antoine Pitrou solip...@pitrou.net wrote: Resurrection The process by which a finalizer creates a new reference to an object in a CI. This can happen as a quirky but supported

Re: [Python-Dev] PEP 442: Safe object finalization

2013-05-18 Thread Nick Coghlan
On Sat, May 18, 2013 at 9:46 PM, Antoine Pitrou solip...@pitrou.net wrote: On Sat, 18 May 2013 21:05:48 +1000 Nick Coghlan ncogh...@gmail.com wrote: On Sat, May 18, 2013 at 6:59 PM, Antoine Pitrou solip...@pitrou.net wrote: Resurrection The process by which a finalizer creates a new

Re: [Python-Dev] PEP 442: Safe object finalization

2013-05-18 Thread Antoine Pitrou
On Sat, 18 May 2013 22:51:35 +1000 Nick Coghlan ncogh...@gmail.com wrote: On Sat, May 18, 2013 at 9:46 PM, Antoine Pitrou solip...@pitrou.net wrote: On Sat, 18 May 2013 21:05:48 +1000 Nick Coghlan ncogh...@gmail.com wrote: On Sat, May 18, 2013 at 6:59 PM, Antoine Pitrou solip...@pitrou.net

Re: [Python-Dev] PEP 442: Safe object finalization

2013-05-18 Thread Armin Rigo
Hi Antoine, On Sat, May 18, 2013 at 10:59 AM, Antoine Pitrou solip...@pitrou.net wrote: Cyclic isolate (CI) A reference cycle in which no object is referenced from outside the cycle *and* whose objects are still in a usable, non-broken state: they can access each other from their

Re: [Python-Dev] PEP 442: Safe object finalization

2013-05-18 Thread Eli Bendersky
Great PEP, I would really like to see this happen as it defines much saner semantics for finalization than what we currently have. One small question below: This PEP proposes to turn CI disposal into the following sequence (new steps are in bold): 1. Weakrefs to CI objects are cleared, and

Re: [Python-Dev] PEP 442: Safe object finalization

2013-05-18 Thread Antoine Pitrou
Hi Armin, On Sat, 18 May 2013 15:24:08 +0200 Armin Rigo ar...@tunes.org wrote: Hi Antoine, On Sat, May 18, 2013 at 10:59 AM, Antoine Pitrou solip...@pitrou.net wrote: Cyclic isolate (CI) A reference cycle in which no object is referenced from outside the cycle *and* whose

Re: [Python-Dev] PEP 442: Safe object finalization

2013-05-18 Thread Antoine Pitrou
On Sat, 18 May 2013 06:37:54 -0700 Eli Bendersky eli...@gmail.com wrote: Great PEP, I would really like to see this happen as it defines much saner semantics for finalization than what we currently have. One small question below: This PEP proposes to turn CI disposal into the following

Re: [Python-Dev] PEP 442: Safe object finalization

2013-05-18 Thread Richard Oudkerk
On 18/05/2013 9:59am, Antoine Pitrou wrote: This PEP proposes to turn CI disposal into the following sequence (new steps are in bold): 1. Weakrefs to CI objects are cleared, and their callbacks called. At this point, the objects are still safe to use. 2. **The finalizers of all CI objects

Re: [Python-Dev] PEP 442: Safe object finalization

2013-05-18 Thread Eli Bendersky
On Sat, May 18, 2013 at 6:47 AM, Antoine Pitrou solip...@pitrou.net wrote: On Sat, 18 May 2013 06:37:54 -0700 Eli Bendersky eli...@gmail.com wrote: Great PEP, I would really like to see this happen as it defines much saner semantics for finalization than what we currently have. One small

Re: [Python-Dev] PEP 442: Safe object finalization

2013-05-18 Thread Antoine Pitrou
On Sat, 18 May 2013 14:56:38 +0100 Richard Oudkerk shibt...@gmail.com wrote: On 18/05/2013 9:59am, Antoine Pitrou wrote: This PEP proposes to turn CI disposal into the following sequence (new steps are in bold): 1. Weakrefs to CI objects are cleared, and their callbacks called. At

Re: [Python-Dev] PEP 442: Safe object finalization

2013-05-18 Thread Armin Rigo
Hi Antoine, On Sat, May 18, 2013 at 3:45 PM, Antoine Pitrou solip...@pitrou.net wrote: How is this done? I don't see a clear way to determine it by looking only at the objects in the CI, given that arbitrary modifications of the object graph may have occurred. The same way a generation is

Re: [Python-Dev] PEP 442: Safe object finalization

2013-05-18 Thread Antoine Pitrou
On Sat, 18 May 2013 16:22:55 +0200 Armin Rigo ar...@tunes.org wrote: Hi Antoine, On Sat, May 18, 2013 at 3:45 PM, Antoine Pitrou solip...@pitrou.net wrote: How is this done? I don't see a clear way to determine it by looking only at the objects in the CI, given that arbitrary

Re: [Python-Dev] PEP 442: Safe object finalization

2013-05-18 Thread Richard Oudkerk
On 18/05/2013 3:18pm, Antoine Pitrou wrote: It works fine: $ ./python sbt.py __main__.Node object at 0x7f3acbf8f400 __main__.Node object at 0x7f3acbf8f878 __main__.Node object at 0x7f3acbf8f878 __main__.Node object at 0x7f3acbf8f400 The reason is that, when you execute del self.next, this

Re: [Python-Dev] PEP 442: Safe object finalization

2013-05-18 Thread Antoine Pitrou
On Sat, 18 May 2013 15:52:56 +0100 Richard Oudkerk shibt...@gmail.com wrote: On 18/05/2013 3:18pm, Antoine Pitrou wrote: It works fine: $ ./python sbt.py __main__.Node object at 0x7f3acbf8f400 __main__.Node object at 0x7f3acbf8f878 __main__.Node object at 0x7f3acbf8f878 __main__.Node

Re: [Python-Dev] PEP 442: Safe object finalization

2013-05-18 Thread Terry Jan Reedy
On 5/18/2013 11:22 AM, Antoine Pitrou wrote: On Sat, 18 May 2013 15:52:56 +0100 Richard Oudkerk shibt...@gmail.com wrote: So even more contrived: class Node: def __init__(self, x): self.x = x self.next = None def __del__(self):

Re: [Python-Dev] cpython: Undo the deprecation of _asdict().

2013-05-18 Thread Serhiy Storchaka
18.05.13 10:06, raymond.hettinger написав(ла): http://hg.python.org/cpython/rev/1b760f926846 changeset: 83823:1b760f926846 user:Raymond Hettinger pyt...@rcn.com date:Sat May 18 00:05:20 2013 -0700 summary: Undo the deprecation of _asdict(). Why?

Re: [Python-Dev] cpython: Use PY_FORMAT_SIZE_T because Visual Studio does not understand %zd format.

2013-05-18 Thread Serhiy Storchaka
18.05.13 19:37, richard.oudkerk написав(ла): http://hg.python.org/cpython/rev/0648e7fe7a72 changeset: 83829:0648e7fe7a72 user:Richard Oudkerk shibt...@gmail.com date:Sat May 18 17:35:19 2013 +0100 summary: Use PY_FORMAT_SIZE_T because Visual Studio does not understand %zd

Re: [Python-Dev] cpython: Use PY_FORMAT_SIZE_T because Visual Studio does not understand %zd format.

2013-05-18 Thread Serhiy Storchaka
18.05.13 23:00, Serhiy Storchaka написав(ла): 18.05.13 19:37, richard.oudkerk написав(ла): http://hg.python.org/cpython/rev/0648e7fe7a72 changeset: 83829:0648e7fe7a72 user:Richard Oudkerk shibt...@gmail.com date:Sat May 18 17:35:19 2013 +0100 summary: Use PY_FORMAT_SIZE_T

Re: [Python-Dev] More compact dictionaries with faster iteration

2013-05-18 Thread Raymond Hettinger
On May 15, 2013, at 4:32 AM, Christian Tismer tis...@stackless.com wrote: What is the current status of this discussion? I'd like to know whether it is a considered alternative implementation. As far as I can tell, I'm the only one working on it (and a bit slowly at that). My plan is to

[Python-Dev] Ordering keyword dicts

2013-05-18 Thread Guido van Rossum
On Sat, May 18, 2013 at 10:27 PM, Raymond Hettinger raymond.hettin...@gmail.com wrote: BTW, I'm +1 on the idea for ordering keyword-args. It makes it easier to debug if the arguments show-up in the order they were created. AFAICT, no purpose is served by scrambling them (which is exacerbated