E( E(X|Y) ) = E(X)
This is known as "the law of total expectation", and as a programmer this notation is so weakly typed it makes no sense. The more correct notation is
E_Y(E_X(X|Y))
If you can see that the outer E is summing over Y and the inner one over X, then the theorem is immediately clearer and very intuitive.
In the outer expectation, there’s only one choice: X no longer exists as a potential random variable (as if it were a local variable in the inner expectation) so the outer expectation must be over Y.
I’m not saying that you’re wrong that those subscripts could be used (they often are) but the meaning of the expression is clear after a little while working with expectations.