PPyA: Python Assembler
Friday, April 18th, 2008Over the last few of days I’ve hacked together a Python Assembler/Disassembler. I’ve called it PPya (pronounced like “papaya,” the fruit) Paul’s Python assembler. The ‘a’ is left lowercase because it looks better that way.
Each of those days I started to write up this blog post but then got distracted working on it some more
It’s at the point now where it is fairly usable, both as a learning tool and as a tool for writing Python modules in assembly if you feel so inclined.
If you want to check it out, the gitweb project page is here: http://git.paulbonser.com/?p=ppya.git;a=summary
or you can git clone it:
git clone git://git.paulbonser.com/git/ppya.git/
or, if you’re behind a firewall or something
git clone http://git.paulbonser.com/git/ppya.git/
PPya Overview
A .pya file consists of a series of bytecodes (well, strings representing them, anyway) followed by parameters for those instructions which take parameters. When assembled, these parameters are converted to indices into a tuple in a python Code object, one of conames, coconsts, covarnames, cocellvars, or co_freevars.
