Blog Archives

Two-dimensional spatial hashing with space-filling curves

The Hilbert curve is a fractal space-filling curve that is rather pretty to look at. A Hilbert curve of order n traces a single path over a square of side 2^n units, as you can see in the images from
Posted in haskell, software

Haskell: bootstrapping into a clue about monads

As part of my remedial Haskell learning process, I’ve been getting my feet wet once more with monads. Here are a few notes on the techniques that I’ve tried, and how I’ve fared with them. Not surprisingly, my first step
Posted in haskell

Getting started with installing third-party Haskell packages

Since I’ve been away from the Haskell world for a long time, it’s been interesting to return and observe some surprises about the practical side of working with the language. For me, an early gotcha has been the relative paucity
Posted in haskell, linux

Dealing with yum hangs on FC6

One of the exciting things about upgrading to Fedora Core 6 is that the yum package manager now frequently hangs on me. This does not fill me with joy. The most common way in which it falls over is by
Posted in linux

The shock of the forgotten

I’ve lately become interested in the Haskell programming language again, after a long time (eleven years!) away from the fold. During the process of thrashing about and trying to find my footing, I discovered a new module, named Data.ByteString, which
Posted in haskell, slice-o-life

How to build safe, clean Python 2.5 RPMs for Fedora Core 6

Since FC6 ships with Python 2.4, you’re a bit stuck if you want to play with the new features of Python 2.5. Here’s a quick and easy way to build and install a cleanly-packaged version of Python 2.5 for FC6.
Posted in linux, python

Refilling a missed TLB entry, now with special sauce

Jeremy and Muli remind me that x86-class CPUs refill a missed TLB entry in hardware. That’s what I get for rambling at midnight! On these CPUs, the hardware walks the page tables directly when a miss occurs. The operating system
Posted in hardware, software

The translation lookaside buffer

In an earlier post, I briefly discussed the oprofile system profiler. I was going somewhere with that; here’s another step along the path. Modern CPUs that use virtual memory have to be able to turn virtual addresses into physical addresses
Posted in hardware, linux

Make Linux performance analysis easier with oprofile

If you’ve had to do much performance tuning on a Linux system, you may have come across the oprofile system profiler. It may sound like a great piece of software, but it’s got a name for being difficult to use.
Posted in linux

Mathbin, a pastebin that renders mathematics using LaTeX

If you use IRC to collaborate on a software project, chances are you’ve come across pastebin.com, a site where you can post snippets of code, program output, patches, and the like, and then give out the URL of the snippet
Posted in open source, web