This and other RFCs are available on the web at http://dev.perl.org/rfc/ =head1 TITLE All perl generated errors should have a unique identifier =head1 VERSION Maintainer: Chaim Frenkel <[EMAIL PROTECTED]> Date: 9 Aug 2000 Version: 1 Mailing List: [EMAIL PROTECTED] Number: 85 All perl generated errors should have a unique identity. So that changes in the text should not cause breakage in code. =head1 DESCRIPTION Currently many programs handle error returns by examining the text of the error returned in $@. This makes changes in the text of the error message, an issue for the backwards compatibility police. An added benefit, depending upon the actual method of identifing errors selected could be a classification scheme for errors. =head1 IMPLEMENTATION Each unique identifier once assigned as part of a stable release of perl will be guarenteed never to be changed, or if the error text is removed, never to be reused. =head2 Encodings I have listed some possiblities. But none of these are ideal. =head3 A unique number Each error message will be assigned a unique number. The number could be made accessible via the $@ in a numeric context. =over 4 =item As an integer This would be simple and direct =item As a floating point number The integer part would be the actual identifier. The fractional part could encode some classification scheme. =back =head3 Unique String Each error message will have a unique string assigned. The unique string could be accessible as $@->unique_id =head3 Prefixes for all error strings (Shades of Big Blue) Each error message will have a unique string that will be part of the text. For those of you who have ever read through the IBM Codes and Errors manual this will look familiar. For example FIL0001W unable to close filehandle %s properly PAR0003F Can't find label %s =head2 Classification Schemes To be defined. Suggestions welcome. =head1 REFERENCES
