Solving the symbol-vs-number conundrum Lassi Kortela (09 Aug 2020 21:29 UTC)
Re: Solving the symbol-vs-number conundrum John Cowan (10 Aug 2020 01:02 UTC)
Re: Solving the symbol-vs-number conundrum Lassi Kortela (10 Aug 2020 06:48 UTC)
SQLSTATE Lassi Kortela (10 Aug 2020 07:03 UTC)
Any alphanumeric errors anywhere? Lassi Kortela (10 Aug 2020 07:11 UTC)
Re: Any alphanumeric errors anywhere? Lassi Kortela (10 Aug 2020 07:15 UTC)
Re: Any alphanumeric errors anywhere? Göran Weinholt (10 Aug 2020 07:44 UTC)
VMS errors Lassi Kortela (10 Aug 2020 08:29 UTC)
Re: VMS errors John Cowan (11 Aug 2020 02:44 UTC)
Re: Solving the symbol-vs-number conundrum John Cowan (10 Aug 2020 20:36 UTC)
Re: Solving the symbol-vs-number conundrum Lassi Kortela (10 Aug 2020 21:30 UTC)
Re: Solving the symbol-vs-number conundrum John Cowan (11 Aug 2020 03:48 UTC)
Re: Solving the symbol-vs-number conundrum Lassi Kortela (11 Aug 2020 06:50 UTC)
Re: Solving the symbol-vs-number conundrum hga@xxxxxx (12 Aug 2020 12:01 UTC)
Re: Solving the symbol-vs-number conundrum John Cowan (12 Aug 2020 12:48 UTC)
Semantic property names and static vs dynamic types Lassi Kortela (14 Aug 2020 15:54 UTC)
Re: Semantic property names and static vs dynamic types John Cowan (14 Aug 2020 22:06 UTC)
Re: Solving the symbol-vs-number conundrum hga@xxxxxx (12 Aug 2020 12:06 UTC)
Re: Solving the symbol-vs-number conundrum Lassi Kortela (14 Aug 2020 15:57 UTC)
Re: Solving the symbol-vs-number conundrum hga@xxxxxx (15 Aug 2020 16:26 UTC)
Re: Solving the symbol-vs-number conundrum hga@xxxxxx (10 Aug 2020 22:11 UTC)

Solving the symbol-vs-number conundrum Lassi Kortela 09 Aug 2020 21:29 UTC

We had the nice and simple (make-foreign-status 'symbol x 'number y)

SQLSTATE codes are almost numeric, but some have letters in addition to
digits. These codes are definitely not mnemonic: they look like a jumble
of arbitrary digits and letters. They would have to be represented as a
symbol (or string) in Scheme. But databases also give clear mnemonic
symbols corresponding to these codes: e.g. 'protocol_violation.

So we'd like to put

- the 5-character SQLSTATE jumble '|08P01| into one field
- the mnemonic 'protocol_violation into a second field
- the human-readable message as a string into a third field

SQLSTATE is the only letter/digit code I've found so far; all other
error codes are just integers. (Usually nonnegative; some are negative.)
Since we have only one exception, maybe we should just have:

* 'symbol (mmenonic identifier, always a Scheme symbol)
* 'number (error code, always an exact integer)
* 'sqlstate (special property for SQLSTATE as a Scheme symbol or string)

For SQL errors, the 'number property would simply be #f or missing.
'symbol would be something like 'protocol_violation.