news.volyx.in

What’s New in Python 3.8 (docs.python.org)

833 points by supakeen · 2558 days ago · 367 comments on HN

Article summary

Python 3.8 introduces several new features, including assignment expressions, positional-only parameters, and a parallel filesystem cache for compiled bytecode files. The release also includes improvements to existing modules and functions, such as f-strings and the pickle protocol. Additionally, the debug build now uses the same ABI as the release build, and the Vectorcall protocol has been added to the Python/C API. The release aims to improve performance, readability, and usability of the language.

Main themes

  • Python 3.8 features
  • Assignment expressions
  • Language improvements
  • Backward compatibility
  • Python 2.7 deprecation

What commenters say

  • The introduction of assignment expressions is a valuable addition to the language, but some argue that the chosen syntax is not the most Pythonic.
  • The deprecation of Python 2.7 is long overdue, and its continued use is a hindrance to progress.
  • The decision to break backward compatibility with Python 3.0 was necessary to fix fundamental issues, such as Unicode handling.
  • Others argue that the break in compatibility could have been done incrementally, and that the benefits of Python 3 do not outweigh the costs of migration.
  • The use of the walrus operator is seen as an improvement over alternative syntaxes, such as the 'as' keyword.
  • Some developers are resistant to change and prefer to continue using older versions of the language, even if it means missing out on new features and improvements.
  • The Python community is divided on the issue of backward compatibility and the pace of change in the language.