Hm, I looked around for a while, and it seems the finished erosion classes missed my (infrequent) backups, so they're lost in the bitbucket.
However, a class called "Erosion" is still included in the wurm source (that we now have a proper cvs for), and upon closer examination, that turned out to be one of the first versions of it. It's wrong in a lot of ways (I even think it explodes instead of going stable), and there's no actual ERODING in it yet, but here you go: Eroder.java
(Yes, I renamed it. And it's not commented. And actually not as ugly as it could be)
Basically, you want to move some data from the ground ValueMap into the dissolved one unless dissolved/water exceed a certain threshold. If it does, move it the other way instead.
Then make the moveWater method move some dissolved ground as well as water (in pretty much the same way), add rain and evaporation, and run it for a few thousand passes.
Oh, and make sure you never end up with negative values of ground, dissolved or water. That's a Bad Thing.