I'm a CS undergraduate, newly registered 2+-year lurker, and HPMOR acolyte. Can you imagine my surprise as I the article I'm reading casually describes me?
We hadn't been expecting it, but many advisees asked us questions related to procrastination, social skills, and other life skills.
I had a lot of trouble with procrastination in my high school career, and did on one occasion look on Less Wrong for answers. It's not surprising to me that the smart kids who are interested in the topics discussed here would have problems with self-control and video game addiction. I am, of course, projecting.
It's not clear to me why they don't participate more actively on LessWrong. Maybe no special reasons are needed: the ratio of lurkers to posters is huge for most Internet fora.
That is true for the electronics forum I lurk for answers to my simple questions, or for some other site I met while researching some topic. However, the community here is so brilliant that I feel like anything I would add would be seen as inexperienced and petty, and my youth obvious. I can't speak for all of the other high school and college students lurking here, but that is the case for me. Make it clear that this site isn't an ivory tower where they'll defenstrate you if you say something stupid.
TakisMichel said it well: The discussions and comments here is (or were) intimidatingly high-quality. In the same way I wouldn't speak out in a physics convention full of PhD holders, I wouldn't do so here.
For any non-Haskell-guys wanting to compile and run this, you gotta first install the "Haskell Platform". Then copy the botworld file and game file into Botworld.hs and Rudimentary.hs respectively, in the same directory. You should be able to input Example.hs into the Haskell interpreter by clicking, and end up at a command line... here you simply enter "main" and the game displays the initial and final evolution states in an ascii-grid.
You can open up Example.hs in any editor, and take a look at main() at the bottom, and see what it does or modify it - It's the point of execution.
You can change main to print out each evolution step every half-second (as soon as you look up how to perform loops in Haskell), or figure out how the three default entities (lifter, aggressor, overwriter) work. As far as I can tell thus far, all of the actions of the three figures are hard-coded and known at compile-time; there's no reasoning being done by the entities yet.
The first change I'd attempt, other than adding the output-loop, would be deciphering constree language and trying to embed some intelligence into lifter; if it can, gauge the distance between it and aggressor, and move to the richest slot unless the distance is under, say three blocks.