I read this paper shortly after it came out:
One Pass Real-Time Generational Mark-Sweep Garbage Collection
However, I've spent ages since trying to find it again. Mainly due to confusing it with The Treadmill: Real-Time Garbage Collection Without Motion Sickness, which describes a somewhat related algorithm that uses a read barrier to support mutation.
The algorithm described in the first paper is pretty amazing. It's simple, effective, fast, real-time, and requires no read barrier. The downside, however, is that it requires that pointers only ever point back in time to older objects. Which is fine if you have a purely functional language, since an object being created can only ever obtain references to objects that already exist at creation, and those references can never be updated to point to a newer object thereafter. However, you cannot then use any optimisations that use mutation "under the hood" such as in-place update of linear values.
Read more »
A water expert came to look at our stream yesterday, for two reasons: the fact that water came through the wall of our house raises some worrying questions about the structural integrity of the tunnel the stream goes through under our garage, and up at the top of the waterfall, the raging flood eroded away some stones underneath a number of large heavy stones, and one day they'll come crashing down, possibly blocking the tunnel and creating a huge flood.
He turned out to be a really interesting guy, just as fascinated by underground stuff as I 🙂
Read more »
After the recent flood, the spring stopped working again. So once more, we went up into the field to try and dig up the pipework.
To recap, last time it stopped, we pulled out the ancient map my grandparents had made when setting up the spring plumbing in the field, and started trying to find either of the two header tanks. We figured that checking the state of the header tanks would be a good way to narrow the problem down. We didn't find either tank, but we did find a part of the pipework. Amusingly, it had a large iron stake nailed through the ceramic pipe, an earthing point for a nearby overhead electricity line. This made it easy for us to life away a broken of shattered pipe and observe a healthy stream of clear water down the thing, indicating the problem was further downhill; but the thick clay was holding the shattered pipe together perfectly well, so we put it back again and carefully packed it down.
Failing to find the header tank in good time, after having spent a lot of time digging around in heavy clay to try and exhume it, we connected a compressor to the pipe where it emerged from the ground by the house, and blew air up it. This caused air to bubble from the ground at a point in the field, but when the compressor was removed, a lot of mud spurted out of the pipe followed by clean water... it had clearly disturbed a blockage. So we considered it fixed for now.
But anyway, recently it failed again. And since there's no mains water available at the moment, this is a bit of a blow.
Read more »
We've built a flood diverter:

Heavy rain is predicted tomorrow, and if it floods again, this thing should help to divert the stream around behind the house.
Thing is, it reminds me of the scenery from the first part of Half Life: 2. I feel compelled to find some yellow paint and put a lambda symbol on it.