I don't think there will be a limit for nesting of statements (including IF) because the compiler will just generate code with branches, I don't think it has to take the nesting into account. I may be wrong for why, or phrasing it poorly, but I don't think there is a limit.
The EVALUATE is different, because the compiler has to generate code for the entire self-contained construct, so there has to be a limit. A Nested IF, or nested anything, is an "artificial" construct, not a compiler construct. The compiler construct is the simple IF (or whatever), it is the programmer who "nests", just combining the simple elements. There will be nothing (except final limits on program sizes) to restrict the number of nested EVALUATEs, for instance, even though there are limits within the EVALUATE. It is interesting that unlike EVALUATE, SEARCH ... WHEN... has no limits. No time to think about that now...

I have seen a 256-WHEN EVALUATE. Someone decided to decode the bits in a byte that way. I didn't realise it was exactly on the limit, as well as being very stupid.
Yes, there is nothing in the language which restricts idiocy. At exceptional times this may be useful. Never nice. These types of things should be covered by site-standards
