Tim Peters (software engineer)

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

Tim Peters
OccupationSoftware developer
AwardsPSF Distinguished Service Award

Tim Peters is a software developer who is known for creating the Timsort hybrid sorting algorithm and for his major contributions to the Python programming language and its original CPython implementation. A pre-1.0 CPython user, he was among the group of early adopters who contributed to the detailed design of the language in its early stages.[1]

He later created the Timsort algorithm (based on earlier work on the use of "galloping" search)[2] which is used in Python since version 2.3 (since version 3.11 using the Powersort merge policy instead of Timsort's original merge policy[3][4]), as well as in other widely used computing platforms,[5][6][7] including the V8 JavaScript engine powering the Google Chrome and Chromium web browsers, as well as Node.js.[8][9] He has also contributed the doctest and timeit modules to the Python standard library.[10]

Peters also wrote the Zen of Python, intended as a statement of Python's design philosophy, which was incorporated into the official Python literature as Python Enhancement Proposal 20 and in the Python interpreter as an easter egg.[11] He contributed the chapter on algorithms to the Python Cookbook.[12] From 2001 to 2014 he was active as a member of the Python Software Foundation's board of directors. Peters was an influential contributor to Python mailing lists.[13] He is also a highly ranked contributor to Stack Overflow, mostly for answers relating to Python.[14][10]

Peters' past employers include Kendall Square Research.[15][16] Tim Peters was granted the Python Software Foundation's Distinguished Service Award for 2017.[10][13]


See also

[edit | edit source]

References/Notes and references

[edit | edit source]
  1. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  2. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  3. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  4. ^ Commit switching to powersort
  5. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  6. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  7. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  8. ^ V8 release v7.0, Official V8 Blog
  9. ^ Getting things sorted in V8, Official V8 Blog
  10. ^ a b c Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  11. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  12. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  13. ^ a b Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  14. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  15. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  16. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
[edit | edit source]