GNU bug report logs -
#70065
[PATCH 0/6] gnu: Update to Racket 8.12, Chez Scheme 10, and Zuo 1.9.
Previous Next
Full log
View this message in rfc822 format
Hi Liliana,
On 4/1/24 11:45, Liliana Marie Prikler wrote:
> Am Montag, dem 01.04.2024 um 02:51 -0400 schrieb Philip McGrath:
>> Since Chez Scheme 10.0.0 supports all of the backends added in
>> Racket's
>> branch, the complexity of '%chez-features-table' is no longer needed.
>> Ideally, even more of this logic could be maintained upstream, but
>> this
>> change will simplify maintenance in the mean time.
>>
>> [...]
>>
>> +(define-syntax define-machine-types
>> + (lambda (stx)
>> + (syntax-case stx (any)
>> + ((_ any id0 id ...)
>> + #`(define #,(datum->syntax #'id0 '%machine-types)
>> + '(id0 id ...))))))
> The datum->syntax call here looks weird.
It is a little unusual. The goal is to be able to copy the *use* of
define-machine-types directly from the Chez Scheme source code, making
it easier to update in the future. The datum->syntax call is needed to
synthesize an identifier that will bind in the surrounding context.
>> +;; The following is copied from s/cmacros.ss, line 36, in the Chez
>> source
>> +(define-machine-types
>> + any
>> + pb tpb
> You should maybe comment ;; unthreaded threaded
I wouldn't mind that if you think it would be useful, though I'd rather
not do a v3 just for this. If someone does want to add it, I'd strongly
prefer for the comment to outside of the define-machine-types
S-expression so the use stays exactly as in the Chez source.
>> + pb32l tpb32l
>> + pb32b tpb32b
>> + pb64l tpb64l
>> + pb64b tpb64b
>> + i3nt ti3nt
>> + i3osx ti3osx
>> + i3le ti3le
>> + i3fb ti3fb
>> + i3ob ti3ob
>> + i3nb ti3nb
>> + i3s2 ti3s2
>> + i3qnx ti3qnx
>> + i3gnu ti3gnu
>> + a6nt ta6nt
>> + a6osx ta6osx
>> + a6le ta6le
>> + a6fb ta6fb
>> + a6ob ta6ob
>> + a6nb ta6nb
>> + a6s2 ta6s2
>> + ppc32osx tppc32osx
>> + ppc32le tppc32le
>> + ppc32fb tppc32fb
>> + ppc32ob tppc32ob
>> + ppc32nb tppc32nb
>> + arm32le tarm32le
>> + arm32fb tarm32fb
>> + arm32ob tarm32ob
>> + arm32nb tarm32nb
>> + arm64nt tarm64nt
>> + arm64osx tarm64osx
>> + arm64le tarm64le
>> + arm64fb tarm64fb
>> + arm64ob tarm64ob
>> + arm64nb tarm64nb
>> + rv64le trv64le
>> + rv64fb trv64fb
>> + rv64ob trv64ob
>> + rv64nb trv64nb
>> + la64le tla64le
>> +)
>>
Thanks,
Philip
This bug report was last modified 1 year and 38 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.