On Sun, Jul 31, 2016 at 9:52 PM, Robert P. Goldman rpgoldman@sift.info wrote:
On 7/31/16 Jul 31 -6:12 PM, Faré wrote:
The whole point of UIOP is to provide ASDF and other CL programs with portability abstractions that actually work in the current CL landscape. Not to pretend that that CL landscape magically matches some imagined ideal when that isn't the case.
I think that's a stretch in this one case -- all the implementations agree on CL:SERIOUS-CONDITION, with the exception of CCL, and I believe they agree that they have simply made a mistake in their implementation.
I'm reluctant to build into UIOP a new type definition whose description exactly parallels the definition of SERIOUS-CONDITION in the spec.
If *that* is your interpretation, then my reply is then that uiop/common-lisp should shadow SERIOUS-CONDITION and export its version that is (and cl:serious-condition (not ccl::process-reset)) or some such.
All UIOP and ASDF packages :mix uiop/common-lisp (which unlike other UIOP packages is NOT reexported by UIOP itself -- you have to explicitly :use it instead of :common-lisp if you want).
Until now we have limited ASDF and UIOP to plugging holes in the spec (like the absence of good enough pathname support). We haven't been also adding a shadow implementation of the spec for cases where the implementations simply got it wrong. That feels like mission-creep to me.
Oh yes we have been adding these shadow implementations: it's uiop/common-lisp.
The closest I'd be willing to go is to remove UIOP:*FATAL-CONDITIONS* and replace it with a type definition for UIOP:FATAL-CONDITION. But even that makes me feel bad. I guess we can keep this for now, but I'll be a lot happier when it's simply an alias for CL:SERIOUS-CONDITION.
I believe I added UIOP:*FATAL-CONDITIONS* so that users could customize the use of WITH-FATAL-CONDITION-HANDLER. I believe it's useful.
But please remove *fatal-condition-exceptions*.
—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org To have a right to do a thing is not at all the same as to be right in doing it. — G.K. Chesterton