I want to understand these better. Can you whip up a compile-fail example for each of the three restrictions in this paragraph, along with a short description of *why* the programs must be rejected? I feel like it's going to be very important to communicate our restrictions up-front, and this will help to that end.