On 2011-04-30, at 14:20, John Cowan wrote, responding to me:
>> I would suggest adding a new procedure, (MAKE-ERROR-OBJECT message
>> obj...), which creates the implementation-defined object ERROR is
>> supposed to create,
> 
> I don't have a problem with this, though I think it's less useful than
> the predicate and accessors, so I filed another ticket.
It is somewhat less useful than I had at first thought, I realized earlier 
today that most built-in functions would create a subtype of ERROR-OBJECT, and 
that ERROR in particular would do so. I'd therefore like to suggest loosening 
the language a bit, though I don't have immediate new wording to suggest. 
> 
>> adding a sentence to the RAISE and RAISE-CONTINUABLE entries that says
>> `The effect of applying this procedure to an object not created via
>> MAKE-ERROR-OBJECT is implementation-defined'.
> 
> I'm really opposed to that: simple programs ought to be able to
> throw simple objects, especially when the conditions don't represent
> exceptions.

Since every WG1 program is (supposed to be) a WG2 program, that means that it's 
perfectly acceptable for a WG2 module to offer a procedure that does a RAISE 4, 
and and for another WG2 module that also, for very different reasons to do the 
same. This would make using these two modules together extremely difficult, 
which sort of defeats the idea of programming-in-the-large.

I'm not wedded to the wording I suggested, but would like to promote the idea 
that WG1 allows a certain range of exception objects to be thrown, and WG2 
perhaps extends and perhaps refines this range. 

-- vincent
_______________________________________________
Scheme-reports mailing list
[email protected]
http://lists.scheme-reports.org/cgi-bin/mailman/listinfo/scheme-reports

Reply via email to