I'd take a look at this wiki page:
http://wiki.dominionstrategy.com/index.php/Triggered_effectsIn short, when you gain a card, you look at the list of triggers, choose an order to process them in, and then follow that order. So, at the time you gain E1, the triggers are "Exile mat: you may discard E0" and "Experiment: gain E2". Importantly, you do not add any more triggers to this list after it's determined.
Let's say you choose to resolve them in the order "you may discard E0", then "gain E2". Against better judgement, you choose to discard E0 from the Exile mat. Then, you gain E2. Once you gain E2, it triggers Gatekeeper (and nothing else, since E0 and E1 aren't on your Exile mat). So you exile E2. You already made the list of triggers for gaining E1, and at the time, E2 wasn't on your Exile mat. So you do not discard E2.
Now, why can't you add triggers after the list of triggers has been determined? Well, it would have some weird consequences. For instance, let's say you gained a regular Village with Gatekeeper in play. Gatekeeper triggers, putting it on the Exile mat. If you could keep adding triggers, you could then say "Look, a Village is on my Exile mat, and I'm gaining a Village, so let me just discard this exiled Village here." And so that's why you can't do that.