diff --git a/pep-0454.txt b/pep-0454.txt index b9e1ea997..863fddb42 100644 --- a/pep-0454.txt +++ b/pep-0454.txt @@ -22,20 +22,21 @@ Rationale Common debug tools tracing memory allocations read the C filename and number. Using such tool to analyze Python memory allocations does not -help because most memory allocations are done in the same C function, -``PyMem_Malloc()`` for example. +help because most memory block are allocated in the same C function, +in ``PyMem_Malloc()`` for example. -There are debug tools dedicated to the Python languages like ``Heapy`` +There are debug tools dedicated to the Python language like ``Heapy`` and ``PySizer``. These projects analyze objects type and/or content. -These tools are useful when the most memory leak are instances of the -same type and this type in allocated only in a few functions. The +These tools are useful when most memory leaks are instances of the +same type and this type is only instancied in a few functions. The problem is when the object type is very common like ``str`` or -``tuple``, and it is hard to identify where these objects are allocated. +``tuple``, and it is hard to identify where these objects are +instancied. -Finding reference cycles is also a difficult task. There are different -tools to draw a diagram of all references. These tools cannot be used -huge on large applications with thousands of objects because the diagram -is too huge to be analyzed manually. +Finding reference cycles is also a difficult problem. There are +different tools to draw a diagram of all references. These tools cannot +be used on large applications with thousands of objects because the +diagram is too huge to be analyzed manually. Proposal