pushed updated library tests
Felix Thibault
(21 Aug 2020 22:28 UTC)
|
Re: pushed updated library tests
Marc Nieper-Wißkirchen
(22 Aug 2020 15:27 UTC)
|
Re: pushed updated library tests
Felix Thibault
(22 Aug 2020 16:23 UTC)
|
Re: pushed updated library tests
Marc Nieper-Wißkirchen
(25 Aug 2020 07:04 UTC)
|
Re: pushed updated library tests
Alex Shinn
(25 Aug 2020 07:20 UTC)
|
Re: pushed updated library tests
Marc Nieper-Wißkirchen
(25 Aug 2020 07:40 UTC)
|
Re: pushed updated library tests
Alex Shinn
(25 Aug 2020 07:58 UTC)
|
Re: pushed updated library tests
Marc Nieper-Wißkirchen
(25 Aug 2020 08:13 UTC)
|
Re: pushed updated library tests
Alex Shinn
(27 Aug 2020 02:14 UTC)
|
Re: pushed updated library tests
Marc Nieper-Wißkirchen
(27 Aug 2020 07:35 UTC)
|
Re: pushed updated library tests
John Cowan
(27 Aug 2020 17:43 UTC)
|
Re: pushed updated library tests
Felix Thibault
(27 Aug 2020 22:19 UTC)
|
Re: pushed updated library tests
Arthur A. Gleckler
(27 Aug 2020 23:23 UTC)
|
Re: pushed updated library tests
Alex Shinn
(28 Aug 2020 00:43 UTC)
|
Re: pushed updated library tests
Marc Nieper-Wißkirchen
(28 Aug 2020 05:26 UTC)
|
Re: pushed updated library tests
Alex Shinn
(28 Aug 2020 05:35 UTC)
|
Re: pushed updated library tests
Marc Nieper-Wißkirchen
(28 Aug 2020 05:52 UTC)
|
Re: pushed updated library tests
Marc Nieper-Wißkirchen
(28 Aug 2020 13:47 UTC)
|
Re: pushed updated library tests
Alex Shinn
(28 Aug 2020 14:24 UTC)
|
Re: pushed updated library tests
Marc Nieper-Wißkirchen
(28 Aug 2020 15:03 UTC)
|
Re: pushed updated library tests
Alex Shinn
(31 Aug 2020 13:14 UTC)
|
Re: pushed updated library tests
Marc Nieper-Wißkirchen
(31 Aug 2020 14:44 UTC)
|
Re: pushed updated library tests
Alex Shinn
(31 Aug 2020 21:15 UTC)
|
Re: pushed updated library tests
Marc Nieper-Wißkirchen
(01 Sep 2020 06:52 UTC)
|
Re: pushed updated library tests
Alex Shinn
(01 Sep 2020 07:18 UTC)
|
Re: pushed updated library tests
Marc Nieper-Wißkirchen
(01 Sep 2020 07:24 UTC)
|
Re: pushed updated library tests
Alex Shinn
(01 Sep 2020 07:29 UTC)
|
Re: pushed updated library tests Marc Nieper-Wißkirchen (01 Sep 2020 07:47 UTC)
|
Re: pushed updated library tests
Alex Shinn
(02 Sep 2020 01:19 UTC)
|
Re: pushed updated library tests
Marc Nieper-Wißkirchen
(02 Sep 2020 07:02 UTC)
|
Re: pushed updated library tests
Marc Nieper-Wißkirchen
(31 Aug 2020 15:50 UTC)
|
Am Di., 1. Sept. 2020 um 09:29 Uhr schrieb Alex Shinn <xxxxxx@gmail.com>: >> >> Given the program >> >> >> >> (import (scheme base) (scheme write)) >> >> (define-syntax print >> >> (syntax-rules () >> >> ((print a) (begin (write a) (newline))))) >> >> (print "Hello, World!") >> >> >> >> by your reading, "Hello, World!" is not a literal because by following >> >> the production rules without taking macro expansion into account, you >> >> will never get to the production rule of <literal>. You will end up >> >> with <macro use> and be stuck there. >> > >> > >> > The restriction and the entirety of section 7.1 refer to the _lexical_ structure >> > of the program, well before macro expansion. >> >> So, "Hello, World!" is not a literal in my above program in sense of >> your reading? > > > Of course it is, it's self-evaluating. Lexically, <self-evaluating> is a production rule in 7.1.3, which can only be reached through <literal>. But you don't reach the production rule <literal> if you just look at the lexical structure. Maybe someone else should try to explain it better than I am apparently able to, but let me try again: We are talking about two meanings of "literal" here and what must be meant by the restriction in 2.4. (1) "literal" as an expression type. (2) "literal" as some lexical property of a datum in the source. My argument is that only (1) makes sense. You seem to want to read "literal" as in (2). But this will always lead to some contradiction. First of all, without expanding macro uses, the production rules are always stuck at a <macro use>. But let's ignore it. Then, by your answer you gave me about "Hello, World!", every datum of "(quote <datum>)" or every self-evaluating datum in the source code is considered to be a literal for (2). This, however, would make the restriction in 2.4 nonsensical: (import (scheme base)) (define-syntax strip (syntax-rules () ((_ (kwd arg)) arg))) (strip (quote #1=(begin (display #\x) #1#))) would then not be covered by 2.4.