GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — bpo-39320: Handle unpacking of *values in compiler by markshannon · Pull Request #17984 · python/cpython

Conversation

@markshannon

@markshannon markshannon commented Jan 13, 2020 •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown
Member

Quoting bpo 39320:

We can replace the complex bytecodes used in unpacking with simpler, more focused ones.
Specifically the collection building operations:

  • BUILD_LIST_UNPACK
  • BUILD_TUPLE_UNPACK
  • BUILD_SET_UNPACK
  • BUILD_TUPLE_UNPACK_WITH_CALL
    can be replaced with simpler, and self-explanatory operations:
  • LIST_TO_TUPLE
  • LIST_EXTEND,
  • SET_UPDATE

This PR implements those changes. (The proposed changes to ** unpacking will be implemented in another PR).

https://bugs.python.org/issue39320

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
@the-knights-who-say-ni the-knights-who-say-ni added the CLA signed label Jan 13, 2020
@bedevere-bot bedevere-bot added the awaiting core review label Jan 13, 2020
markshannon added 5 commits January 15, 2020 15:11
@markshannon
Add three new bytecodes: LIST_TO_TUPLE, LIST_EXTEND, SET_UPDATE. Use …
580b502
…them to implement star unpacking expressions.
@markshannon
Remove BUILD_LIST_UNPACK, BUILD_TUPLE_UNPACK and BUILD_SET_UNPACK opc…
9c7fe8a
…odes as they are now unused.
@markshannon
Remove BUILD_TUPLE_UNPACK_WITH_CALL opcode.
d579371
@markshannon
Update magic number for new bytecodes.
f16e778
@markshannon
Update dis.rst to incorporate new bytecodes.
b4310ac
@markshannon
markshannon force-pushed the handle-unpacking-in-compiler branch 2 times, most recently from 1f851c4 to 5dbab06 Compare January 15, 2020 15:43
@markshannon
Add blurb entry.
f920034
@markshannon
markshannon force-pushed the handle-unpacking-in-compiler branch from 5dbab06 to f920034 Compare January 15, 2020 16:31
@markshannon markshannon added the 🔨 test-with-buildbots Test PR w/ buildbots; report in status section label Jan 22, 2020
@bedevere-bot

bedevere-bot commented Jan 22, 2020

Copy link
Copy Markdown

🤖 New build scheduled with the buildbot fleet by @markshannon for commit f920034 🤖

If you want to schedule another build, you need to add the ":hammer: test-with-buildbots" label again.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@bedevere-bot bedevere-bot removed the 🔨 test-with-buildbots Test PR w/ buildbots; report in status section label Jan 22, 2020
@markshannon

markshannon commented Jan 23, 2020

Copy link
Copy Markdown
Member Author

The PPC64 Fedora failure is a pre-existing problem.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@markshannon
markshannon merged commit 13bc139 into python:master Jan 23, 2020
@markshannon
markshannon deleted the handle-unpacking-in-compiler branch January 23, 2020 09:25
@bedevere-bot bedevere-bot removed the awaiting core review label Jan 23, 2020
@markshannon markshannon mentioned this pull request Jan 23, 2020
bpo-39320: Handle unpacking of **values in compiler #18141
Merged
shihai1991 pushed a commit to shihai1991/cpython that referenced this pull request Jan 31, 2020
@markshannon @shihai1991
bpo-39320: Handle unpacking of *values in compiler (pythonGH-17984)
c215289
* Add three new bytecodes: LIST_TO_TUPLE, LIST_EXTEND, SET_UPDATE. Use them to implement star unpacking expressions.

* Remove four bytecodes BUILD_LIST_UNPACK, BUILD_TUPLE_UNPACK, BUILD_SET_UNPACK and  BUILD_TUPLE_UNPACK_WITH_CALL opcodes as they are now unused.

* Update magic number and dis.rst for new bytecodes.
@chadnetzer chadnetzer mentioned this pull request Mar 21, 2021
bpo-43574: Dont overallocate list literals #24954
Closed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

No reviews

Uh oh!

There was an error while loading. Please reload this page.

Assignees

No one assigned

Labels

None yet

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

Uh oh!

There was an error while loading. Please reload this page.

3 participants

@markshannon @bedevere-bot @the-knights-who-say-ni
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.