So, I know that recursion doesn't seem to work in the simple case, but
at least it reaches runtime. Mutual recursion doesn't even compile
successfully. 

Here's the classic example of mutual recursion:

  sub even ($n) {
    given $n {
      when 0  { return 1 };
      default { odd($n-1) };
    }
  }

  sub odd ($n) {
    given $n {
      when 0 { return }
      default { even($n-1) };
    }
  }

  even(2);

Which throws C<< [prefix::val (not implemented) even] Prefix operator odd
 >> while compiling the tree. Curse!

Sorry to keep throwing up errors, but I don't have the time at present
to go through the code to try and find where the problem arises, but I
think it's good to at least document the problem cases; if only so
they can get shoved into the test library...

-- 

   "It is a truth universally acknowledged that a language in
    possession of a rich syntax must be in need of a rewrite."
         -- Jane Austen?

Reply via email to