On 23/05/2026 3:21, Olivier Dion wrote:
I have no idea why `dummy' is necessary here.  I'm sure someone that

To keep things in a definition context, or whatever the technical term is, I'd assume.

Going only by the code mentioned in the mail, It seems eliminatable though. For example, instead of

    (define dummy
      (let ()
        (register-record-type
         (quote record-name)
         record-name (make-record-constructor-descriptor
                      record-name #,parent-cd #,protocol))
        'dummy))
    (define predicate-name (record-predicate record-name))

I'd guess that following works too, avoiding 'dummy', by moving the things into the definition of predicate-name:

    (define predicate-name
      (let ()
        (register-record-type
         (quote record-name)
         record-name (make-record-constructor-descriptor
                      record-name #,parent-cd #,protocol))
        (record-predicate record-name)))

This assumes that field-accessors and field-mutators don't refer to 'dummy'.

Best regards,
Amélie Devos

Reply via email to