MITB Banner

What To Expect In Python 3.8: Easy Debugging, Extensive API For C Extension & Walrus Operator

Share

Python has proven to be the go-to language in the field of machine learning and data science. According to our recent survey, over 75 percent of respondents said that it is crucial for job seekers to have Python skills to get an opportunity in data science. The beta cycle releases of Python version 3.8 has been around the corner since the beginning of 2019 and the latest beta version of Python 3.8.0 beta 3 is expected to be released today.

What’s New?

Python 3.8 is still in the development phase and according to the team, the beta version has included a number of intuitive as well as notable features. PEP stands for Python Enhancement Proposal and is a design document providing information to the Python community, or describing a new feature for Python or its processes or environment. According to the PEPs submitted for version 3.8, there are several major new features in Python 3.8 than the earlier version of 3.7.

The new features are mentioned below:

  • Assignment Expressions: Python 3.8 includes the Walrus Operator (:=), one of the most important features included in this version. This is a new syntax used to assign values to variables as part of an expression using the notation NAME := expr. This PEP is a controversial one by the supporters as well as critics while in the developing stage.
  • Positional-Only Parameters: This PEP proposes to introduce a new syntax, /, for specifying positional-only parameters in Python function definitions.
  • Python Initialisation Configuration: This feature adds a new C API to configure the Python Initialisation providing finer control on the whole configuration and better error reporting. 
  • Vectorcall: This feature introduces a new C API to optimise calls of objects i.e. it introduces a new “vectorcall” protocol and calling convention based on the “fastcall” convention, which is already used internally by CPython.
  • Python Runtime Audit Hooks: This feature describes additions to the Python API including the specific behaviors for the CPython implementation which make actions taken by the Python runtime visible to auditing tools. 
  • Pickle Protocol 5: Pickle protocol 5 with out-of-band data is a new pickle protocol version (5) to cover the extra metadata needed for out-of-band data buffers. This PEP aims to make pickle usable in a way where large data is handled as a separate stream of zero-copy buffers, letting the application handle those buffers optimally. 

Other interesting changes include typing-related features which contain the final qualifier, literal types, and TypedDict, parallel filesystem cache for compiled bytecode, debug builds share ABI as release builds, LOAD_GLOBAL is now 40% faster, typed_ast is merged back to CPython, -strings support a handy = specifier for debugging, pickle now uses Protocol 4 by default, improving performance and much more. 

The developer team of Python suggests the users must perform testing during the beta phase in order to ensure that there will be no issues when the stable version of 3.8 will be released. They stated that third party users are strongly encouraged to test the beta version and hence report the problems which are being found to the Python bug tracker. The features will be modified and in rare conditions can be deleted too. “Our goal is to have no ABI changes after beta 3 and no code changes after 3.8.0rc1, the release candidate. To achieve that, it will be extremely important to get as much exposure for 3.8 as possible during the beta phase as possible.”

Share
Picture of Ambika Choudhury

Ambika Choudhury

A Technical Journalist who loves writing about Machine Learning and Artificial Intelligence. A lover of music, writing and learning something out of the box.
Related Posts

CORPORATE TRAINING PROGRAMS ON GENERATIVE AI

Generative AI Skilling for Enterprises

Our customized corporate training program on Generative AI provides a unique opportunity to empower, retain, and advance your talent.

Upcoming Large format Conference

May 30 and 31, 2024 | 📍 Bangalore, India

Download the easiest way to
stay informed

Subscribe to The Belamy: Our Weekly Newsletter

Biggest AI stories, delivered to your inbox every week.

AI Forum for India

Our Discord Community for AI Ecosystem, In collaboration with NVIDIA. 

Flagship Events

Rising 2024 | DE&I in Tech Summit

April 4 and 5, 2024 | 📍 Hilton Convention Center, Manyata Tech Park, Bangalore

MachineCon GCC Summit 2024

June 28 2024 | 📍Bangalore, India

MachineCon USA 2024

26 July 2024 | 583 Park Avenue, New York

Cypher India 2024

September 25-27, 2024 | 📍Bangalore, India

Cypher USA 2024

Nov 21-22 2024 | 📍Santa Clara Convention Center, California, USA

Data Engineering Summit 2024

May 30 and 31, 2024 | 📍 Bangalore, India

Subscribe to Our Newsletter

The Belamy, our weekly Newsletter is a rage. Just enter your email below.