[Python-Dev] python-dev Summary for 2004-06-01 through 2004-06-15 [draft]

Brett bac at OCF.Berkeley.EDU
Thu Jun 17 18:50:31 EDT 2004

I plan on sending this summary out this weekend, so please get any  
edits in by then.

And don't get too used this level of turn-around; I just haven't  
started work yet and I am not in the mood to start coding my thesis.   


Summary Announcements
Wow, two summaries written in a single week.  Hell has not frozen over,  
don't worry; work has just not started yet.  =)

New PEP on bytecode verification
As it stands now, unless you are running a debug build of Python, there  
are no checks that the bytecode being executed by the interpreter is  
valid.  It is not terribly difficult to crash the interpreter with  
blatently invalid bytecode.

In an attempt to resolve this, `PEP 330`_ has been written in hopes of  
coming up with a Python module in the stdlib that can have bytecode  
passed to it and attempt to perform some basic verification on it.

.. _PEP 330: http://python.org/peps/pep-0300.html

Contributing threads:
   - `PEP 330 Python bytecode verification  

2.4a1 coming up soon
Python 2.4a1 should be coming out early July.  If you have some bugs or  
patches you want to see in 2.4 then reads Anthony's announcement email  
for general guidelines on how to go about this.

Jeremy Hylton pointed out that since the AST branch did not make it in  
before this announcement it would not be included in 2.4 (thus  
guaranteeing a sprint topic for PyCON 2005).  Generator expressions  
*are* in this alpha with late bindings; if early binding would work  
better in your code after trying late binding then speak up since the  
semantics can change.

Contributing threads:
   - `pre-announce: Python 2.4a1 is about a month away  

The shaky courtship of 2.4 and function decorators
With 2.4a1 ominously approaching on the horizon, Guido asked what  
people thought of holding off on including function decorators for 2.5.  
  Some people said to put it in and if that meant using Guido's, then so  
be it.  Others said to wait and let Guido have more time since he  
wanted to consider Java 1.5's syntax.

Guido said he would ask at EuroPython_ for more opinions.

.. EuroPython: http://www.europython.org/

Contributing threads:
   - `functions decorators in 2.4?  
   - `Dropping decorator syntax for 2.4?  

Why Stackless is not about to be incorporated into the core
Someone asked why Stackless_ is still not part of the Python core.   
After a bunch of talking, Guido spelled out a couple of reasons.  One  
was a lack of a clear spec; if it is not obvious how it will behave it  
can't go in.  Another was whether it could reasonably work on Jython;  
Python the language needs to be portable enough to be coded in C or  
Java.  A third point was not wanting to rely on platform hacks in order  
for something to work; Stackless doesn't use the C stack and that can  
complicate things (and Guido put longjmp() from ISO C in this category  
so don't ever think of using it in a patch).

In other words Stackless is not going to be integrated into the core at  
this time.

.. _Stackless: http://www.stackless.com/

Contributing threads:
   - `Stackless Python  
   - `Re: Stackless Python  

Remember, some stdlib modules are maintained elsewhere
Greg Ward reminded python-dev that optparse is maintained as Optik_ and  
as a separate project.  Some other modules are also maintained like  
this, so it is something to keep an eye out for if you are writing  
patches or reporting a bug.

.. _Optik: http://optik.sf.net/

Contributing threads:
   - `Reminder: optparse.py is auto-generated  

Python Bug Day
The First Python Bug Day took place on June 5th, led by AM Kuchling.   
The end results are listed at  
http://www.python.org/moin/PythonBugDayStatus and look very good.

Since SF troubles cropped up during the day (both frustration with  
people not being able to add files to bugs and patches created by other  
people and SF CVS going down), discussion of getting off of SF came up  
(this was also mentioned in several other minor threads).  The desire  
to host off-site were brought up, but the issue of having enough  
volunteers to handle the load of managing a CVS or Subbversion  
repository was brought up.  Also moving over to Roundup or GForge on a  
server under out control was also brought up.  Nothing looks like it is  
going to happen any time soon, though (at least not until 2.4 is out  
the door).

The next Bug Day has been tentatively scheduled for July 10.

Contributing threads:
   - `Python bug day?  
   - `Bug day outcome  

What it takes to have something to support weak references
(should have been in last summary)
Why don't strings and such support weak references?  Turns out that  
variable-sized objects (i.e., tp_itemsize specified) cannot support  
them without direct support hard-coded in the struct.  Since it would  
require more space and extra code for deallocation to add support for  
things such as strings and tuples, it is not going to be added to them,  
especially since they are immutable already.

Contributing threads:
   - `Why aren't more things weak referencable  

Heterogeneous comparisons
The list was reminded that in the future at some point, comparisons  
between heterogeneous types will raise TypeError sans '==' and '!='.   
This brought up the discussion of comparing floats to longs.  Guido  
said he is going to make sure that they can still be compared without  
issue (part of the reason true division was introduced).  People talked  
about the best way to go about it, but it was mostly just talk since  
this is not about to go into the core.

Contributing threads:
   - `Comparing heterogeneous types  

Finalizing Decimal type
Facundo Batista posted an email summing up the last nagging features  
for the Decimal type and `PEP 327`_.  He said he would send another  
draft to Tim Peters for a quick look and then post basically the final  
PEP (doesn't look like that has happened, though

.. _PEP 327: http://python.org/peps/pep-0327.html

Contributing threads:
   - `Decimal issues - Conclusion  

Free Icon books
Tim Peters posted links to links to PDFs of three significant books on  
Icon_ (see the email for the links).

Why would Python programmers care about the Icon programming language?   
Well, Python got the idea of generators from Icon.  Plus it never hurts  
to know more languages, if anything just for new ideas for Python or to  
be able to emphatically state Python is better.  =)

.. _Icon: http://www.cs.arizona.edu/icon/

Contributing threads:
   - `Free Icon books  

Documenting undocumented C API functions
Thomas Heller updated Doc/tools/undoc_symbols.py (which finds out what  
C API code is undocumented) and ran it.  The list of undocumented C  
code is listed at  
Documenting_25CorePythonApiFunctions .  If you would like to help with  
documenting, helping with documenting what is listed at the wiki would  
be great.

Contributing threads:
   - `undocumented api functions  

Tool for side-by-side diffs outputted in HTML
http://www.python.org/sf/914575 has a patch that adds the necessary  
code and a tool script for side-by-side diffs using difflib that output  
in a nice HTML format.  While the code has not been accepted yet, I  
personally know how useful this functionality can be so I thought I  
would just let people know about the code.

And if you find this code helpful, then doing a code review and adding  
a comment on the patch would be helpful in getting the code accepted.

Contributing threads:
   - `Side by Side Differencing Patch  
   - `HTML side by side diff patch 914575  

Removing CLRFs in PCbuild directory
Martin v. Lowis fixed the vcproj files in the PCbuild directory to have  
the proper line endings.  Problem is that you must run ``cvs update  
-A`` on your PCbuild directory to add the -kb tag on the files since it  
is a sticky tag.

Contributing threads:
   - `Changing PCBuild/*.vcproj to text mode  

Bounding free list creation for ints and such ain't easy
Bounding the size of the memory used by ints and other built-ins that  
have a custom allocator was brought up.  The suggestion of moving them  
to pymalloc was suggested, but it was pointed out it would make it  
slower and waste more space on some platforms.  And the ideas on how to  
deal with this all seemed difficult.  No code was committed in the end.

Contributing threads:
   - `Object free lists  

How to search the python-dev archives
One idea is to use gmane.org to do your searches since they index the  
mailing list.  The one that I (and apparently Tim Peters) use is to do  
a Google search with ``site:mail.python.org python-dev`` at the  
beginning.  I actually search the python-dev archives using the same  
technique; ``site:www.python.org "python-dev Summary"``.

Contributing threads:
   - `python-dev archive searching ?  

More information about the Python-Dev mailing list