I was truly thrilled when I first came across exceptions in C++ after using the clumsy error reporting style of C. It made my algorithms cleaner and, therefore, it made me happy. After several years, I tried Java and I found it interesting to impose the discipline of explicitly declaring the exceptions that may be raised in a routine.
I was asked what the benefit of Exceptions as Objects (EAO) was in Eiffel. My short answer was flexibility of design. I knew that this answer was far from sufficient. Now I take the time my machine is busy running tests to think about it deeper and write it down. Hopefully people who are trying using it or starting to learn this area of Eiffel may better understand the mechanism and its benefits.