Differences between revisions 10 and 11
Revision 10 as of 2006-05-03 17:02:49
Size: 2232
Editor: 66
Comment:
Revision 11 as of 2006-05-03 17:12:56
Size: 2198
Editor: 66
Comment:
Deletions are marked like this. Additions are marked like this.
Line 29: Line 29:
= Pure Python Modules = = Pure Python Projects =
 * Improve language shootout submissions
   http://dada.perl.it/shootout/python.html
Line 33: Line 35:
 * Improve PythonPerformanceTips
Line 53: Line 56:
'''PyPy''' = PyPy =
Line 57: Line 60:

'''Other'''
 * Improve PythonPerformanceTips
 * Improve code submissions to language shootout
 * Implement improvements in the Python Package Index

Here are some topics that fit into the NeedForSpeed theme. You can add additional topics below.

Please discuss the specific goals and possible approaches to these problems!

CPython

  • Implement PEPs for optimizing global and attribute lookups
  • Implement faster floating point ops
  • Implement portions of decimal module in C
  • Struct module improvements (e.g. struct.compile, struct.finditer)
  • Create a string variant that provides lazy slicing without copying
  • Allow selective removal of unused features (e.g. profiling support)
  • Faster parsing of strings and bytes into int, long, etc.
  • Buffer for use with network i/o
  • More collections
    • ordered dictionary
    • alternate list optimized for fast insertion and deletion
    • red/black tree
    • pivot tables
    • skip list
  • Create a 64 bit PyInt type (for 32 bit machines)

  • Optimize str object methods
  • Add itertools.imerge() and itertools.izip_longest()

Pure Python Projects

Twisted

  • Speed improvements to select and poll reactors
  • Reactor based on /dev/epoll
  • Better integration with psyco
  • Improvements against twisted benchmark

Psyco

  • Support for generator expressions
  • Support for nested scopes
  • Support for more dictionary operations
  • Speedup float arithmetic
  • Support for more built-ins (e.g. int(), long(), float(), etc.)
  • Upgrade for python 2.5
  • Better tools for profiling psyco-ness of application
  • Investigate usefulness of IVM (with aim to producing a more streamlined dispatch loop)
  • LLVM backend
  • Virtualised longs (for long longs)
  • Virtualised slots (Ability to cache getattribute() values)

PyPy

  • JIT compiler
  • LLVM backend
  • RPython extension modules for CPython

NeedForSpeed/Goals (last edited 2008-11-15 13:59:37 by localhost)

Unable to edit the page? See the FrontPage for instructions.