Hey,

What I've seen so far and I like is to use small helper methods to signal 
exceptions:

"usage"
Dictionary >> at: aKey
        ...
        self keyNotFound: aKey.

"helper method to fill the exceptions params"
Dictionary >> keyNotFound: aKey
        KeyNotFoundException signalWithKey: aKey

"helper to signal an Exception"
KeyNotFoundException class >> signalWithKey: aKey
        self new
                key: aKey;
                signal.

At least one of the helper methods should be present to make the code more 
readable, I think.


And as Mariano pointed out, there should be a convention on the naming: I am 
still not sure about suffixing the exception classes with "Exception", but I 
guess this is a good thing to do. Though I must say that I omitted it so far ;) 
and just put the verb there, but that can be easily changed.

The exception hierarchy looks nice ;), I think in this matter we can learn a 
bit from Java.

And I would certainly like to see these error messages infect the whole system 
;).

camillo


On 2011-04-13, at 11:03, Sven Van Caekenberghe wrote:
> On 13 Apr 2011, at 10:50, Mariano Martinez Peck wrote:
>> You probably know the PharoByExample chapter on exceptions,
>> but just in case: 
>> https://gforge.inria.fr/frs/download.php/26600/PBE2-Exceptions-2010-03-02.pdf
> 
> Seems like the right kind of preparation, I will reread it.
> I love written documentation.
> Thanks!
> 
> Sven

Reply via email to