A Lisp-like language would be easier to implement than a BASIC-like one - but is probably too unfamiliar for beginners.
Update: I have read through your post again. Yes, macros or basic functions can make a lot of things easier for beginners - I once did something like that with Java. But the language and especially the environment is still not beginner-friendly, for example when the first confusing error messages appear.