Python 3.5 has syntax features that are unavailable in the previous versions. They grant improved support for asynchronous programming (PEP 492), matrix multiplications (PEP 465) and the unpacking operator (PEP 448). The goal of this project is to implement these features in PyPy3. This way support for Python 3 code gets improved. Implementing coroutines will be the main feature of this project, as this feature offers more new methods than the other features. PEP 465 shows that Matrix multiplication is already used more often than bitwise operations in numeric libraries. Also, having coroutines with async and await syntax as well as enhanced unpacking options, the possibility that Python 3.5 syntax will be used in upcoming code rises. Therefore, an implementation of these features in PyPy3 will definitely increase compatibility to future Python 3 programs. In order to support PyPy’s Python 3 compatibility even further, other new features of Python 3.5 and 3.4 will be implemented after finishing the three PEPs if there is enough time, starting with the enum module of 3.4 and continuing with PEP 461 to allow support of the % formatting operator to bytes and bytearrays.




  • Ronan Lamy
  • Richard Plangger