One other little tidbit about EasyUO and recursion is that most people might not realize is that recursive calls to subroutines with a "FOR" statement won't work as you might expect. EasyUO handles the iterative argument of a FOR loop separately than a normal variable. So if you have any looping constructs, you must not use FOR loops to be safe. I know it fails with !vars, which indicates that when Cheffe implemented 1.5 of EasyUO, he didn't update the FOR construct for those who might be using namespace variables.
I'll have to think of a small snippet to demonstrate why it doesn't work..