Incidentally, I'd like to proposed that Guile 4.0 should fix the missing auxiliary syntactic keywords definition in some module such as (rnrs record syntactic) and (srfi srfi-26).
(I'd open an issue at https://codeberg.org/guile/guile/issues/41, reposting to here it's not bad) In particular, (rnrs record syntactic) is missing keywords like: fields mutable immutable parent protocol sealed opaque nongenerative parent-rtd and (srfi srfi-26) is missing keywords: <> <...> Similar issues may also exist in other code, but I have not confirm all of thme. These bad pattern seems to stem from a misunderstanding of how `syntax-case` matches its literals: literal doesn't matched symbolically, both SRFI-93 and R6RS had specifiy that an literal identifier pattern should be match with free-identifier=? Quoting from https://www.r6rs.org/final/html/r6rs-lib/r6rs-lib-Z-H-13.html#node_idx_1124 "More formally, an input form F matches a pattern P if and only if one of the following holds: P is an underscore ( _ ). P is a pattern variable. P is a literal identifier and F is an equivalent identifier in the sense of free-identifier=? (section 12.5). ..." -- Retrieve my PGP public key: 执行下列命令以获取我的 PGP 公有密钥: gpg --recv-keys B3EBC086AB0EBC0F45E0B4D433DB374BCEE4D9DC Zihao / 閱卜錄
signature.asc
Description: PGP signature
