From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Michael Schierl Newsgroups: gmane.lisp.guile.user,gmane.comp.gnu.guix.devel Subject: Re: Can Guile be bootstrapped from source without psyntax-pp.scm? Date: Sat, 13 Mar 2021 23:42:05 +0100 Message-ID: Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: quoted-printable Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="3994"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.8.1.23) Gecko/20090812 Thunderbird/2.0.0.23 Mnenhy/0.7.5.0 To: guile-user@gnu.org, guix-devel@gnu.org, bootstrappable@freelists.org Original-X-From: guile-user-bounces+guile-user=m.gmane-mx.org@gnu.org Sun Mar 14 01:08:59 2021 Return-path: Envelope-to: guile-user@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 ) id 1lLEJW-0000tu-Ja for guile-user@m.gmane-mx.org; Sun, 14 Mar 2021 01:08:58 +0100 Original-Received: from localhost ([::1]:60222 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lLEJV-00024m-BM for guile-user@m.gmane-mx.org; Sat, 13 Mar 2021 19:08:57 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:51274) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lLCxb-0001hx-3j; Sat, 13 Mar 2021 17:42:15 -0500 Original-Received: from mout.gmx.net ([212.227.15.19]:55857) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lLCxY-0002Qy-D3; Sat, 13 Mar 2021 17:42:14 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1615675326; bh=73JQJWuPEvf0q6NDPxNlWQC2vxS3ofiW0UaZVzMEk40=; h=X-UI-Sender-Class:From:To:Subject:Date; b=a95QXN9Rldbow7tM5OPsGXg3Wf88cBVvlsgifeT4dwoW1honzRxFv98hpG9BLIjtI zVW7FjvPupDybDZGZwr1U1+y8TvTEW8hKECMivVoyka14kLByTkJVkQGv4YNGhkdpj 3XP9mk9haes0EzivCQwYJJs14CvbCPKmvLib+F5Q= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Original-Received: from [192.168.178.23] ([84.130.57.43]) by mail.gmx.net (mrgmx005 [212.227.17.190]) with ESMTPSA (Nemesis) id 1M72oH-1lMY8926s3-008aii; Sat, 13 Mar 2021 23:42:06 +0100 Content-Language: de-DE X-Provags-ID: V03:K1:Jv7pZCcbxnabdBv3KK9QGenL17vECdD+ctCUYWNi1A0UY0w73/J ma5T3eAqwuCO2aowzxPKBmnCvxZPq8RE5vlRNJ7zcMRgTSgg27yrxWnm3JuJTzHbwKCIfFh GpBe0VuFNNrQRZbTvw2Of1yZNSF3aRcV2hJy+OvdrOpT2FC0gQq/TT3Umr8rT3upzBs69PO T0VMyHy6VFp8Q99BCyVQA== X-UI-Out-Filterresults: notjunk:1;V03:K0:mBRxFsRr0Cw=:QXpf14OmVUaEdRD3aJsYax G1vAs+3wlCUKOtjZsUH0Nk1ap0QlatyyBTGn7CxosSUcaf6PXd/dv11MFFinp5PGb+44kUHHg UE1ZXquUKNzdn9Km77QfThT6Mb13fawbaJPN23Dd1QawZWwoH6buWhtcEnrbUmA8nLHIjcg0o p3EhiNprY/6mPcWQZVqrqKohitewlvCU5KTIHCJp10IK0YsRXnhcb1RyNaYyukQ97ANpqu36j /jL9bRtA4xgPf5BuqQ7zCAV/CdteOLnpxmvK4amZZLSQ3CGb22oZQZ/2acxL+dJDtOQKX/Ix6 zbE8lCazFo0Rg6kFBvVUfB49Qo0G6K9iOCrN+ipTZZFw5rSby4hu2Ypr23F1L1g4Z+5Sm6if+ sTW8uAu74GDYGOish0B+pwbQL8QNwVC/9OXt7PhCCAjUuqzY/sk1dTyOBWswK6t3tsGoLPe9L s/IeUOJM6f7cqnG8pFDw0qo3/SzG8KR3+lyMi3Xn7b9UqrkZe0Flin7qnDaMorbZpRQdcNqna yaa5XHhADLh1nwcQHcJ2vv1qGRVermI7xWrW0xefcpbWms307trlNVfvY3oVHXxPkJAdbGc2g veBrYZGcBrH80wjOX55INPs+aFZwdxVpazRFiND7YnEA1zO0rb1mJj7QkeXyMFtYZ39rbA8Pw o1uIl8FZVMWMBsHVhm9kbDTwKdWFSLE81Cq4IE14pr1VWODE0cpXmg9cKeJRYnSCV5u/4ib04 KrLfgFnwf5tWkKZ+ZU805hYoGSC94gAA5OQBxftip+m5nD4TgdutmY8SWgaRcvUw0Fa+vgg2 Received-SPF: pass client-ip=212.227.15.19; envelope-from=schierlm@gmx.de; helo=mout.gmx.net X-Spam_score_int: 0 X-Spam_score: -0.0 X-Spam_bar: / X-Spam_report: (-0.0 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, FAKE_REPLY_A1=2.599, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-Mailman-Approved-At: Sat, 13 Mar 2021 19:08:43 -0500 X-BeenThere: guile-user@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: General Guile related discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guile-user-bounces+guile-user=m.gmane-mx.org@gnu.org Original-Sender: "guile-user" Xref: news.gmane.io gmane.lisp.guile.user:17359 gmane.comp.gnu.guix.devel:57847 Archived-At: Hello, Jan Nieuwenhuizen wrote to guile-user@gnu.org[1] on 07 Jul 2017: > Mark H Weaver writes: > >>> Does this mean Guile is not bootstrappable from source only? >> >> That's correct. psyntax-pp.scm is not source code, and it is needed to >> bootstrap Guile. > > I'm facing the same problem with Mes. I have an implemenation of > syntax-rules that is just about 200 lines of define-macro source code, > but not syntax case. >> Having said this, I agree that it would be better if psyntax.scm were >> written in such a way that it could be bootstrapped without the use of >> itself. Maybe some day we'll rewrite it to make it so. > > That could be essential to our full source bootstrapping efforts so I'm > very much interested! For the record, I have written a psyntax implementation that can be used by Guile (3.0.2) and does not require an expanded version of itself. It is not ideal (not fully hygienic and does not support with-ellipsis), but it works well enough to bootstrap a slightly patched version of psyntax.scm, which then can be used to bootstrap "the real thing" and then regenerate psyntax-pp.scm (resulting in a bit-for-bit identical version if you run the bootstrap on 64-bit Linux). The project is at . It may still contain some unnecessary code, and the patch for the patched vesion is definitely not minimal, but for now I'm glad that it works. I may improve it later. Contributions are welcome as well. Regards, Michael [1]: https://mail.gnu.org/archive/html/guile-user/2017-07/msg00011.html