As I've stated before, I have a young son who I have been trying on and off to teach to program.  I still owe you a post talking about what I've found does and does not work.  In the mean time, I ran across this article which give several good resources.  It mentions many of the standbys including Lego Mindstorms, Logo, Scratch, and Basic but also a few I haven't looked into before.