8241650528ca7e6e92e3k100663908orig

Van Rossum promises Python 3.6 will move to GitHub

With the planned Python 3.6 release, the popular scripting language is due for improvements in readability and cryptography. Also on the agenda: Moving the project to GitHub to help contributors participate in the language's development.

Code freeze for version 3.6 happens in September with the final release set for Christmastime, said Python founder Guido van Rossum at the PyCon 2016 conference in Portland this week. Version 3.6 currently is an alpha stage of development.

The upcoming release will include underscores in numbers, simply "because everyone else [has] got them," he said. This capability is about improved readability of numbers with many digits.

In order to beef up cryptography, a secrets module will prompt developers to use the random-number generator provided by the operating platform in use rather than Python's own generator, which is for specific applications such as simulation. The numbers are generated as random tokens for security purposes. "The secrets module is basically a wrapper around the system random number generator," said van Rossum.

Other improvements in Python 3.6 include f-strings, to make it easier to produce properly formatted output based on local variables; local time disambiguation, for programs to better deal with time changes in the event of daylight savings time; and fspath, for converting file names back to strings for use in primitive operations.

In moving Python repositories from Mercurial to GitHub, van Rossum is acknowledging the inertia GitHub now has as a software projects repository. This means users no longer have to learn "obscure" tools like Mercurial to contribute to the project, he said. "Because everybody's already there [on GitHub], it will make it easier for people to contribute to Python." Van Rossum hopes to make this move by the end of this year.

Beyond version 3.6, Python developers are considering several possibilities, including removal of Python's GIL (Global Interpreter Lock), which has been an impediment to multicore programming in the language. The GIL is supposed to make multithreading possible without having separate locks on all data structures, but this notion has been superseded by the arrival of multicore machines. Now, the GIL limits program execution across multiple threads, but if it's removed, another locking mechanism would be needed to protect Python's internal data structures.

Python might also gain a variable declaration syntax, possibly for global, class, and local variables, and the developers are considering a match statement capability, providing a pattern-matching syntax for objects. There has been no "decent" syntax devised yet, though the proposal has apparently generated several hundred emails on the Python ideas list, van Rossum said.

IDG Insider

PREVIOUS ARTICLE

« Toyota said to be in talks to acquire two Google robotics companies

NEXT ARTICLE

I try out MSI's Backpack PC portable VR gaming rig »
author_image
IDG News Service

The IDG News Service is the world's leading daily source of global IT news, commentary and editorial resources. The News Service distributes content to IDG's more than 300 IT publications in more than 60 countries.

  • Mail

Poll

Do you think your smartphone is making you a workaholic?