|
SRFI 198: clear enough for next draft?
Lassi Kortela
(02 Aug 2020 11:35 UTC)
|
|
Re: SRFI 198: clear enough for next draft?
hga@xxxxxx
(02 Aug 2020 12:22 UTC)
|
|
Re: SRFI 198: clear enough for next draft?
Lassi Kortela
(02 Aug 2020 13:21 UTC)
|
|
Re: SRFI 198: clear enough for next draft?
hga@xxxxxx
(02 Aug 2020 15:04 UTC)
|
|
Re: SRFI 198: clear enough for next draft?
John Cowan
(06 Aug 2020 03:49 UTC)
|
|
Re: SRFI 198: clear enough for next draft?
hga@xxxxxx
(12 Aug 2020 16:56 UTC)
|
|
Re: SRFI 198: clear enough for next draft?
John Cowan
(06 Aug 2020 03:22 UTC)
|
|
Re: SRFI 198: clear enough for next draft?
hga@xxxxxx
(12 Aug 2020 16:33 UTC)
|
|
Re: SRFI 198: clear enough for next draft?
John Cowan
(05 Aug 2020 06:13 UTC)
|
|
Re: SRFI 198: clear enough for next draft?
hga@xxxxxx
(05 Aug 2020 13:11 UTC)
|
|
Re: SRFI 198: clear enough for next draft? Lassi Kortela (05 Aug 2020 15:23 UTC)
|
|
Re: SRFI 198: clear enough for next draft?
hga@xxxxxx
(05 Aug 2020 15:59 UTC)
|
|
Re: SRFI 198: clear enough for next draft?
Lassi Kortela
(05 Aug 2020 16:17 UTC)
|
>> The question is what types it is required to be disjoint from. > > OK, so plists, no matter how distinguished on the inside, are not > acceptable foreign-errors/conditions/statuses. Should we list the particular types from which foreign-status should be disjoint? >> A question: is it expected that only a single property's value >> requires locallization? > > You tell me! I would think absolutely not, I can't imagine the SRFI > restricting localization to just one key like 'message. Instead we > could specify one key/value pair like 'message will be localized if the > implementation does localization, and say the conventions for > localization of other key/value pairs are all applied to whatever keys > the error/condition/status-set collection declares might be localized. In addition to a message, PostgreSQL may return a separate "detailed message" as well as a "hint" with troubleshooting tips. That's three different messages, which I presume can all be localized. So being able to localize more than just the 'message field is good, and it would be nice to agree on a standard calling convention. Transparently calling lambdas is a particularly nice way to solve problems like this, since we don't have to decide ahead of time which properties need a lambda (for things like localization). >> > - Plist keys should be symbols. >> >> Why not "must" be symbols? Provides one way to validate the plist. >> >> I think the reference is to them being keywords in systems that have >> keywords that are disjoint from symbols. My inclination is not to >> bother with keywords here. > > And not have the SRFI text require that all keys must be symbols? > Flexibility at the cost of portability.... (make-foreign-status 'errno 'EINTR 'code 4) looks almost like a keyword call, so keywords are bound to come up at some point in some context... That's why I would prefer to handle them now. AFAICT the foreign-status constructors are the only places in the SRFI where they matter. >> We ***really*** want to encourage this paradigm. (I interpret this as: really want to encourage raising exceptions.) >> We might want to return a success HTTP status but raise a failure >> status, though. Yes. Some Python library had a ".raise_status" method you needed to call manually to raise 404's and the like as exceptions. I always forgot it. > There's also the question of whom does what. A Scheme server process > would generally want to return failure statuses instead of halting and > catching fire, one reason we keep make-foreign-/whatever/ in the API, > but a Scheme client for it might want to raise a non-continuable > exception because it believes the error is at its end, or it simply > can't continue. Sounds reasonable. > And in the SRFI text we require raise-foreign-error to > first call make-foreign-/whatever./ Does it matter to the spec how these internals are handled?