STklos also has records built on it's object system, and (unlike Gauche) the order of (class-slots rtd) isn't meaningful. So I've been thinking of struct as making sense for positional access (like Guile's structs), and object as making sense for by-name access, since those seem like the preferred ways to access for structs and objects.

On Mon, Aug 17, 2020 at 4:21 PM Shiro Kawai <xxxxxx@gmail.com> wrote:
Actually, I use the name "object" because of Gauche's "object system", but that's not a standard Scheme term.  If no other implementations have the extension, we may use a more standard name, e.g. "record".

On Mon, Aug 17, 2020 at 7:21 AM Shiro Kawai <xxxxxx@gmail.com> wrote:
Gauche already handles "object".  "@" is just for brevity and no problem dropping it.

On Mon, Aug 17, 2020 at 7:04 AM John Cowan <xxxxxx@ccil.org> wrote:
I understand.  This isn't quite as bad, since @ was originally a Gauche extension to the core WC matcher.  If Gauche is fixed to handle "object", then @ can be dropped or deprecated.

On Mon, Aug 17, 2020 at 11:53 AM Marc Nieper-Wißkirchen <xxxxxx@nieper-wisskirchen.de> wrote:
Am Mo., 17. Aug. 2020 um 17:48 Uhr schrieb John Cowan <xxxxxx@ccil.org>:

> On Mon, Aug 17, 2020 at 11:27 AM Marc Nieper-Wißkirchen <xxxxxx@nieper-wisskirchen.de> wrote:
>
>> I have tried to understand R6RS's lexical syntax. According to it,
>> non-"peculiar" identifiers (that have nothing to do with "@") have to
>> start with an "initial". The set of initials, however, does not
>> contain "@". Or is there some erratum?
>
>
> No, quite right, and therefore @foo is not an identifier.  However, xxxxxx@ and xxxxxx@bar are identifiers, because "@" is a <subsequent>.  Therefore object/@ is an identifier too.

Oh, sorry, now I see where our confusion has come from.

By object/@ I didn't mean the identifier |object/@|. I meant the pair
of alternatives "object" and "@". SRFI 204 says that "object" is
synonymous to "@".