<home> <personal> <hacks> <links> <quotes> <details> <summaries>
~mwh/hacks: <bytecodehacks> <PPY> <xmms-py> <pyicqlib> <pyrepl>
My PythonUK 2004 slides (source)
As I'm still a student (and a maths student, at that), I don't do all that much "serious" programming, but I do futz around with Python quite a bit.
The scariest hack I ever have perpetrated is undoubtedly the bytecodehacks. The docs used to live on starship, but they've moved to sourceforge. Development of the bytecodehacks has largely halted -- they were never much more than a crazy idea. If someone wants to update them to Python 2.2 or newer, I'll give my support.
I recently decided that the bytecodehacks weren't scary enough, and wrote PPY, a package that lets you write Python callables in PPC assembler.
Sometime around the time of Python 2.0's release, I wrote a little piece about the new setdefault method on dictionaries, but forgot to link to it from these pages...
I have written a particularly despicable piece of code that uses bytecodehacks and metaclasses to remove the need for the "self" parameter that periodically gets complained about on c.l.py.
I have also written two versions of a simple non-deterministic evaluator using (the old version of) Christian Tismer's stackless python. There's an incredibly short version and a somewhat more readable version. Take your pick; both are almost certainly too slow to be actually useful.
pyrepl is my readline-alike in Python. It's not finished (and might well never be), but I like it.
I've written a guide on How To Think Like A Pythonista which attempts to explain how Python works, and emphasizes Names, Bindings and Objects.
<home> <personal> <hacks> <links> <quotes> <details> <summaries>Last updated: $at some point -- I don't use CVS anymore... $. Comments to firstname.lastname@example.org.