From mboxrd@z Thu Jan  1 00:00:00 1970
Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail
From: =?UTF-8?Q?Marc_Nieper=2DWi=C3=9Fkirchen?= <marc@nieper-wisskirchen.de>
Newsgroups: gmane.lisp.guile.devel
Subject: Re: [PATCH] add language/wisp to Guile?
Date: Sun, 26 Feb 2023 12:02:04 +0100
Message-ID: <CAEYrNrSa+U4ZCwa5G_vkR1WJH17H_-QBcnPnOrM7FafjP7gJPQ@mail.gmail.com>
References: <mailman.886.1677397547.13386.guile-devel@gnu.org>
Mime-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214";
	logging-data="33866"; mail-complaints-to="usenet@ciao.gmane.io"
To: guile-devel@gnu.org
Original-X-From: guile-devel-bounces+guile-devel=m.gmane-mx.org@gnu.org Sun Feb 26 12:02:45 2023
Return-path: <guile-devel-bounces+guile-devel=m.gmane-mx.org@gnu.org>
Envelope-to: guile-devel@m.gmane-mx.org
Original-Received: from lists.gnu.org ([209.51.188.17])
	by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
	(Exim 4.92)
	(envelope-from <guile-devel-bounces+guile-devel=m.gmane-mx.org@gnu.org>)
	id 1pWEnk-0008cO-5m
	for guile-devel@m.gmane-mx.org; Sun, 26 Feb 2023 12:02:44 +0100
Original-Received: from localhost ([::1] helo=lists1p.gnu.org)
	by lists.gnu.org with esmtp (Exim 4.90_1)
	(envelope-from <guile-devel-bounces@gnu.org>)
	id 1pWEnP-0003lB-9L; Sun, 26 Feb 2023 06:02:23 -0500
Original-Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <marc@nieper-wisskirchen.de>)
 id 1pWEnN-0003kd-Hn
 for guile-devel@gnu.org; Sun, 26 Feb 2023 06:02:21 -0500
Original-Received: from mo4-p00-ob.smtp.rzone.de ([85.215.255.25])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <marc@nieper-wisskirchen.de>)
 id 1pWEnL-0003kk-SE
 for guile-devel@gnu.org; Sun, 26 Feb 2023 06:02:21 -0500
ARC-Seal: i=1; a=rsa-sha256; t=1677409336; cv=none;
 d=strato.com; s=strato-dkim-0002;
 b=sc6ilOH2dfjiIHuQqtv1EmKBi1x9UO5Ha4VIwZKJ95UZuD8QqP/0iyDuEgvSIC1KTV
 XVpREZ/YYQcv5+SaNYlJK6McnBbNsyTC1yQ+x6N029MfZnmuD3V8QXxgKaoUQZ888v39
 B9EC4ETeWk0Nt3YBA/Uds+jHV8NDDQXSwXLlZSPL9crqJ9+csopP72qXjow0byV6hdkg
 bvbO5bD4nfis4nDqYnz4xj2lar/myN+Fxs9TGvRjGT/YKIZdJrSRjyV3Z4h7aj8zWvGC
 XC/t54lv6kFqnJES57qWwa2t9tWvLFR8s2oWN27hUOsxbzOXjfrugfBppsxA9XFxeD0k
 z5OA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1677409336;
 s=strato-dkim-0002; d=strato.com;
 h=To:Subject:Message-ID:Date:From:In-Reply-To:References:Cc:Date:From:
 Subject:Sender;
 bh=S96EkVB1xVHJkn0ks3j8qqn9nSFcXMQdKKV6L7gGpXI=;
 b=b0oZfjFR9o1z7z1SiFBVLv4jBCHEj/gXkf7wQBFXl2TSnQ950pl8O+wY601NqGppSj
 TAFmXVEIhN/uk4iDXU2DhScPv8DSisdWZAuaLq2FdwMKDHqmuVcWS9HrbF3ST6zOBrBF
 Ubs17QiTkXfXwahsHPpMj/nm2/AU4PUoCm/9UaCZ1ZkGEYZzNexq35MjUmmKz3jzIESH
 db1EUDKALH+dZKPuHnAexfvbQDOGMXqfyl6WDiHHAgjt0s+3kCBDOnwxI0E9SDWo2M+9
 w2TEMrVoRgtOGMIETzjx0t2zu4fKg05kq2TBxcGuPnfC23gPlfh2IiRh/exNRu6S6gvY
 Ty1Q==
ARC-Authentication-Results: i=1; strato.com;
    arc=none;
    dkim=none
X-RZG-CLASS-ID: mo00
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1677409336;
 s=strato-dkim-0002; d=nieper-wisskirchen.de;
 h=To:Subject:Message-ID:Date:From:In-Reply-To:References:Cc:Date:From:
 Subject:Sender;
 bh=S96EkVB1xVHJkn0ks3j8qqn9nSFcXMQdKKV6L7gGpXI=;
 b=PY/vnB3M+AxFqOm0Wz29obJAQ5VsUzF/MKeQyRR6CnZZgBl9JxITXSUxXQAzr2KYR0
 nI0kqRuCKF/nSAHttt73LkyymKa7zKAk6pmfxD+o3fBjUdVT5nkfeTqi9QwxB98KpWWH
 UQgXUnDtyD/9AOVFdaIjQx1Wy+X+gtp07lMU088Y3418AsmQ0HJsVsVVLGU2fezKlQ1Z
 j4Exr+t5SLfP560voD9VQOed8dVE3k/9ogqGGa9kLPMvWQk0OUOtX6uxq7W1YXoieU1T
 UexpNcSDYyQgXGebpPnZgZ6jBC8GDYcRS+UNdv4qh5Xv2llfoVtPbfvFNSqp8fUYlKzW
 2CsQ==
X-RZG-AUTH: ":IW0WdmCmcvpIrP2+VJuPtIhjJvc4Ig+QdhX22iZVwSDOx4Kp3cYsBVGy6CZgmO/guIaKVMt57pCq"
Original-Received: from mail-wr1-f45.google.com by smtp.strato.de (RZmta 49.3.0 AUTH)
 with ESMTPSA id e79b15z1QB2FgcM
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits))
 (Client did not present a certificate) for <guile-devel@gnu.org>;
 Sun, 26 Feb 2023 12:02:15 +0100 (CET)
Original-Received: by mail-wr1-f45.google.com with SMTP id r7so3422259wrz.6
 for <guile-devel@gnu.org>; Sun, 26 Feb 2023 03:02:15 -0800 (PST)
X-Gm-Message-State: AO0yUKVCXRDtgx2JwtcB95xBzDxOCTQ6KbG3Ab31DuweAx1cGF6Sixr8
 29YOcTuSuVt8qIX6WyfWJfRK2Rsv3F6/YGwwDzI=
X-Google-Smtp-Source: AK7set/4ORxL0hRROpDqfIZU35x0WFF7638JJkIbrObSGuWu0n35yFgviMlu2hp/JnTwQLX8UaM0MSeYztkc4PlZnkU=
X-Received: by 2002:adf:ce12:0:b0:2c8:14ba:4594 with SMTP id
 p18-20020adfce12000000b002c814ba4594mr993039wrn.3.1677409335666; Sun, 26 Feb
 2023 03:02:15 -0800 (PST)
In-Reply-To: <mailman.886.1677397547.13386.guile-devel@gnu.org>
X-Gmail-Original-Message-ID: <CAEYrNrSa+U4ZCwa5G_vkR1WJH17H_-QBcnPnOrM7FafjP7gJPQ@mail.gmail.com>
Received-SPF: none client-ip=85.215.255.25;
 envelope-from=marc@nieper-wisskirchen.de; helo=mo4-p00-ob.smtp.rzone.de
X-Spam_score_int: -20
X-Spam_score: -2.1
X-Spam_bar: --
X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
 DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1,
 RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_PASS=-0.001,
 SPF_NONE=0.001 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-BeenThere: guile-devel@gnu.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "Developers list for Guile,
 the GNU extensibility library" <guile-devel.gnu.org>
List-Unsubscribe: <https://lists.gnu.org/mailman/options/guile-devel>,
 <mailto:guile-devel-request@gnu.org?subject=unsubscribe>
List-Archive: <https://lists.gnu.org/archive/html/guile-devel>
List-Post: <mailto:guile-devel@gnu.org>
List-Help: <mailto:guile-devel-request@gnu.org?subject=help>
List-Subscribe: <https://lists.gnu.org/mailman/listinfo/guile-devel>,
 <mailto:guile-devel-request@gnu.org?subject=subscribe>
Errors-To: guile-devel-bounces+guile-devel=m.gmane-mx.org@gnu.org
Original-Sender: guile-devel-bounces+guile-devel=m.gmane-mx.org@gnu.org
Xref: news.gmane.io gmane.lisp.guile.devel:21745
Archived-At: <http://permalink.gmane.org/gmane.lisp.guile.devel/21745>

Am So., 26. Feb. 2023 um 08:46 Uhr schrieb <guile-devel-request@gnu.org>:

> Message: 1
> Date: Sun, 26 Feb 2023 02:45:12 -0500
> From: "Philip McGrath" <philip@philipmcgrath.com>
> To: "Maxime Devos" <maximedevos@telenet.be>, Ludovic Court=C3=A8s
>         <ludo@gnu.org>, "Matt Wette" <matt.wette@gmail.com>,
>         guile-devel@gnu.org
> Cc: "Christine Lemmer-Webber" <cwebber@dustycloud.org>
> Subject: Re: [PATCH] add language/wisp to Guile?
> Message-ID: <981b0e74-96c0-4430-b693-7fc8026e3ead@app.fastmail.com>
> Content-Type: text/plain;charset=3Dutf-8

[...]

I would like to make two remarks, which I think are essential to get
the semantics right.

The R6RS comments of the form "#!r6rs" are defined to modify the
lexical syntax of the reader; possibly, they don't change the language
semantics (after reading).  In particular, "#!r6rs" also applies to
data files but does not affect the interpretation of the data after it
is read. It cannot because the reader otherwise ignores and does not
report comments.

Thus a comment of the form "#!r6rs" may be suitable for Wisp, but it
is not a substitute for Racket's "#lang" (or a similar mechanism).
Guile shouldn't confuse these two different levels of meaning.

The second comment concerns the shebang line in R6RS scripts (as
described in the non-normative appendices).  The shebang line is not a
comment in the R6RS lexical syntax; it does not even reach the reader
- at least, conceptionally.  The Scheme reader only sees the lines
following the shebang line.

For example, a conforming R6RS implementation must raise an exception
when trying to read (using get-datum, for example) a file that begins
with a shebang line.

Thus, the shebang line doesn't need to be considered when discussing
comment formats in lexical syntax.

This also shows how a mechanism like "#lang" can be made compatible
with R6RS, namely similar to scripts starting with a shebang line: Let
us define a "multi-language script" whose first line may be a shebang
and whose second line may be of the form "#lang ...".  If "..." is,
say, "r6rs", the following lines are then fed to the reader and
interpreted as an R6RS top-level program.

Best,

Marc