er-macro-transformer/sc-macro-transformer Marc Nieper-Wißkirchen (22 Sep 2020 11:34 UTC)
Re: er-macro-transformer/sc-macro-transformer John Cowan (23 Sep 2020 17:50 UTC)
Re: er-macro-transformer/sc-macro-transformer Marc Nieper-Wißkirchen (24 Sep 2020 08:25 UTC)
(missing)
(missing)
Re: er-macro-transformer/sc-macro-transformer John Cowan (25 Sep 2020 17:01 UTC)
Re: [scheme-reports-wg2] Re: er-macro-transformer/sc-macro-transformer Marc Nieper-Wißkirchen (25 Sep 2020 17:47 UTC)
(missing)
Re: [scheme-reports-wg2] Re: er-macro-transformer/sc-macro-transformer Marc Nieper-Wißkirchen (25 Sep 2020 18:01 UTC)
Re: [scheme-reports-wg2] Re: er-macro-transformer/sc-macro-transformer Marc Nieper-Wißkirchen (26 Sep 2020 08:56 UTC)
Re: [scheme-reports-wg2] Re: er-macro-transformer/sc-macro-transformer Marc Nieper-Wißkirchen (29 Sep 2020 15:44 UTC)
Re: er-macro-transformer/sc-macro-transformer Marc Nieper-Wißkirchen (24 Sep 2020 15:21 UTC)
Re: er-macro-transformer/sc-macro-transformer Marc Nieper-Wißkirchen (24 Sep 2020 16:26 UTC)

er-macro-transformer/sc-macro-transformer Marc Nieper-Wißkirchen 22 Sep 2020 11:34 UTC

I would like to hear some opinions on the following questions:

(1) Shall we include another library for sc-macro-transformer?

This would include the following exports:

- sc-macro-transformer
- rsc-macro-transformer
- make-syntactic-closure
- capture-syntactic-environment
- identifier?
- identifier=?
- make-synthetic-identifier

(2) While the syntax-case interface is pretty much complete and
sufficient, both the er-macro-transformer and the proposed
sc-macro-transformer interface are lacking:

* Both sc-macro-transformer and er-macro-transformer are lacking an
equivalent of syntax->datum to get at the symbol names of identifiers.

* Both sc-macro-transformer and er-macro-transformer are lacking an
equivalent of datum->syntax to write composable anaphoric macros.

* Syntactic closures created by sc-macro-transformer cannot be destructured.

We can leave it at that, but this would mean that applicability and
expressiveness of sc-macro-transformer and er-macro-transformer will
be rather limited compared to the syntax-case system.

Or we could add a number of further primitives. This, however, would
make the systems described in SRFI 211 a proper extension of those
implemented by current Schemes. And one would probably arrive at a
system roughly like Andre van Tonder's implementation of SRFI 72, so
one could then provide syntax-case as well.