Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Python xdis and uncompyle6 #81

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

rocky
Copy link

@rocky rocky commented Jul 23, 2019

Please fill in this template:

  • Use a meaningful title for the pull request. Include the name of the resource added.
  • Add a short sentence on why do you think the resource you're adding is awesome!
  • Make sure your addition maintains the alphabtical order of the list.
  • Make sure your addition contains a description besides the link.

For xdis: although "dis" handles within a given version of python there is nothing else out there that ecompases all released bytecode (and PyPy), Whereas in python disassembly and bytecode handling may get better over time for the current version, improvements here go backwards and extend to all prior bytecode versions. So you can manipulate back-level bytecode with the same convenience as current bytecode. But in addition to this it has extensive knowledge about Python magic numbers, and how to convert them into Python versions. And a facility for creating disassembly in a form that is amenable for a bytecode assembler. (I have a specific one in mind which is also unique, but that's another project though that I haven't listed.)

With regards to the bytecode decompiler it is awesome because it handles something like 25 versions of Python handling its language drift over. the years. It is demonstrably the best bytecode decompiler for Python that exists. (We check this by running over the Python's internal test suite).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant