Author archives: Mike

RSS feed of Mike

Meliae is neat, but scary...

Dave Malcolm's talk at PyCon 2011 mentioned Meliae, which is a memory-crawler that stores out a description of all of the objects in RAM when triggered.  It's Python-level, so not something you can use with Dave's gdb stuff, but it still sounds pretty useful.

Anway, while the summary stuff it produces is okay, but ...

Continue reading

Convert nosetests xml to html (hack)

Want to see the output of your nosetests run in a format that you can hand to someone non-technical (who doesn't mind it being ugly)?  Here's a little script to convert the result of nosetests --with-xunit to an ugly, but functional HTML file.  I can't say I really see this as a long-term solution, as ...

Continue reading

PyPy hits 3x speed (or 1/12th, or 2.5x depending on the sign-post)

Another day playing with PyPy. First up was a pleasant surprise in that the 2x slowdown reduced with the currently nightly build[1], bringing performance up from 40,000cps to ~60,000cps.

After that, applied a micro-optimization that got me about a 6% speedup; I eliminated the use of a state "struct object" (object that just used regular ...

Continue reading

First tempting micro-successes with PyPy

I spent much of Tuesday working on getting PyPy running SimpleParse.  I have to be honest, I was kinda hoping I'd install PyPy and "pow" I'd have a 20x faster parser engine.  It didn't quite work out that way, it was actually 2x slower, with no real explanation of why.  My poor laptop hasn't been ...

Continue reading

Forgot how big SimpleParse is...


At this point I have almost all of SimpleParse converted to pure-python operation. It is still using the Python call-stack for its state storage, just for convenience in coding. That makes it approximately equivalent to the version using "stock" mxTextTools wrt blowing up on recursive grammars (the TextTools fork SimpleParse bundles doesn't blow up on ...

Continue reading

A small enough task to explore PyPy without getting lost


Those who have spoken with me on the topic will recall that I'm rather enthused about PyPy's potential. But every time I've sat down to play with it I've run into a bit of a "small steps" issue... i.e. what small project do I have where I don't need Numpy (which excludes most of my ...

Continue reading

Little bit of OpenGL hacking this afternoon

Managed to find and fix a few small bugs in PyOpenGL. Also did some minor Python 3.x compatibility work. BTW, Python 3.x advocates: low-scored reviews on PyPI with snarky comments are not a huge motivator. Actually they are a pretty strong de-motivator. I was so tempted to just change the categorization to something equally snarky ...

Continue reading

I was like, all, let's do uPNP too... then I was like, meh

So, having worked with mDNS/Zeroconf a bit, I thought I'd take a quick look at uPNP, particularly the IGD device type. IGD here is "Internet Gateway Device", i.e. your router. There are approximately two things you want to be able to access from generic software on a router, your external IP address (so you can ...

Continue reading

mDNS is kinda fun


I've been writing mDNS and uPNP code this past week. It's kinda fun. I've been using a hacked-up version of pyzeroconf which breaks out the multicast, dns and mdns stuff so that multicast-but-not-zeroconf code can use the same code paths as the zeroconf code. Sample code for doing a basic multi-cast but not mDNS operation ...

Continue reading