[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Different versions of syntax-rules
From: |
Lassi Kortela |
Subject: |
Different versions of syntax-rules |
Date: |
Thu, 20 Apr 2023 13:58:56 +0300 |
User-agent: |
Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.10.0 |
Chicken currently has two different implementations of syntax-rules:
- synrules.scm in chicken-core
- synrules.scm in the r7rs egg
I'm far from an expert, but at a glance it looks like the r7rs egg's
version is indeed R7RS compliant whereas the chicken-core version is r5rs.
R7RS (and R6RS) = R5RS + SRFI 46 (Basic Syntax-rules Extensions)?
Both of the above versions of synrules.scm claim the following lineage:
Copyright (c) 1993-2001 by Richard Kelsey and Jonathan Rees.
;;; [Hacked slightly by Taylor R. Campbell to make it work in his
;;; macro expander `riaxpander'.]
;; [Hacked even more by Felix L. Winkelmann to make it work in his
;; Hi-Lo expander]
I can't tell whether these hacks affect the feature set offered to
users, or just the internals.
The version in the r7rs egg additionally says:
;; This is a slightly modified copy of core syntax-rules, enhanced
;; with underscore "wildcard" patterns and the ellipsis (... ...)
;; "quoting" mechanism from R7RS.
Is there a desire to stick to r5rs features only in the chicken-core
expander, or is the intention to fold the R7RS / SRFI 46 features back
into the chicken-core expander at some point in the future?
- Different versions of syntax-rules,
Lassi Kortela <=