|
Some initial comments
Daphne Preston-Kendal
(04 Apr 2026 10:01 UTC)
|
|
Re: Some initial comments
Andrew Tropin
(07 Apr 2026 11:29 UTC)
|
|
Re: Some initial comments
Daphne Preston-Kendal
(29 Jul 2026 20:17 UTC)
|
|
Re: Some initial comments
Vincent Manis (he/him)
(29 Jul 2026 21:03 UTC)
|
|
Re: Some initial comments
Wolfgang Corcoran-Mathe
(01 Aug 2026 16:16 UTC)
|
|
Re: Some initial comments
Andrew Tropin
(13 Aug 2026 06:12 UTC)
|
|
Re: Some initial comments
Andrew Tropin
(13 Aug 2026 06:03 UTC)
|
|
Re: Some initial comments
Daphne Preston-Kendal
(19 Aug 2026 06:49 UTC)
|
|
Re: Some initial comments
Andrew Tropin
(02 Sep 2026 12:17 UTC)
|
|
Re: Some initial comments
Daphne Preston-Kendal
(07 Sep 2026 08:18 UTC)
|
|
Re: Some initial comments
Andrew Tropin
(09 Sep 2026 11:04 UTC)
|
|
Re: Some initial comments
Andrew Tropin
(20 Sep 2026 08:44 UTC)
|
|
Re: Some initial comments Daphne Preston-Kendal (20 Sep 2026 19:30 UTC)
|
|
Re: Some initial comments
Andrew Tropin
(21 Sep 2026 07:11 UTC)
|
|
Re: Some initial comments
Daphne Preston-Kendal
(21 Sep 2026 18:55 UTC)
|
|
Re: Some initial comments
Andrew Tropin
(28 Sep 2026 05:08 UTC)
|
On 9 Sep 2026, at 13:04, Andrew Tropin <xxxxxx@trop.in> wrote:
> Could you draft a basic skeleton of the macro which recognizes metadata
> and non-metadata cases, please?
(define-syntax metadata (syntax-rules ())) ; this is your aux syntax keyword, export it
(define-syntax test
(syntax-rules (metadata)
((_ descr (context) (metadata metadata-expr) body_0 body_1 ...)
'case-with-metadata-and-context)
((_ descr () (metadata metadata-expr) body_0 body_1 ...)
'case-with-metadata-only)
((_ descr (context) body_0 body_1 ...)
'case-with-context-only)
((_ descr () body_0 body_1 ...)
'case-with-neither)))
> Also, I would really appreciate if you could provide a sample,
> demonstrating a mentioned problem (and corresponding Scheme/environment
> info), so I can run it locally and ensure the final implementation won't
> suffer from it.
If you fill out the example I gave of how calling set-default-test-runner! in a library isn’t guaranteed to have any effect with some code to make it a useful test runner, then you should be able to observe on Chez Scheme that the set-default-test-runner! call doesn’t have any effect unless some identifier from the spiffing test runner library is actually invoked by the program (rather than depended on implicitly).
Likewise, a library (not a program, I don’t think) of tests defined in Chez Scheme will fail to compile with your approach to implementing matching ‘metadata’.
Daphne