Thats an interesting way of putting will. My only potential worry about that is code maintenance - you'd have to fix bugs across each version... Unless, you had it fixed so you had a line like:
set language mode advanced
at the start, kind of like {$Mode ObjFpc}, the interpreter would know to switch out of 'easy' mode with more functions, pointers and etc...

Having said that, though, deathshadow - whats your take on scratch? Personally I actively persecute it... But thats just me