[bootstrappable] Re: Can Guile be bootstrapped from source without psyntax-pp.scm?

  • From: Ludovic Courtès <ludo@xxxxxxx>
  • To: Michael Schierl <schierlm@xxxxxx>
  • Date: Wed, 17 Mar 2021 18:25:10 +0100

Hi Michael,

Michael Schierl <schierlm@xxxxxx> skribis:

Am 15.03.2021 um 18:09 schrieb Ludovic Courtès:
Woow, this is great news!  I think it would be great towards importing
it in Guile proper.

To do that, I think we should first get Andy’s opinion on the approach.

I don't think upstream is very interested in having psyntax-pp.scm
bootstrappable. In Guile 3.0.3 they broke even the `make
ice-9/psyntax-pp.scm.gen` target, and did not repair it even in Guile
3.0.5, that's why I used 3.0.2 for the bootstrap. But I included a patch
to repair it in 3.0.5 in case you really want to bootstrap that version
(psyntax-pp.scm has not changed there). OTOH, from the git log it seems
like psyntax is currently being overhauled for the next release, so
probably my code would need some updates for the next version.

Andy made it clear that it was a bug.  There’s an interest in providing
a good bootstrapping story for Guile; that’s why there’s an interpreter
written in C, for example.  I’m sure we’d be happy to address psyntax
bootstrapping as well!

Also, in the last 15 years I avoided directly contributing to "GNU
projects" (with FSF as copyright holder in the license headers), reasons
below. But if anyone else takes my code and upstreams it, I won't object.

Sure, we can discuss the details of how to integrate your code.  (Guile
incorporates code not initially written for Guile, such as sxml or
(ice-9 match), and the policy is to not require copyright assignment for
such code.)

Regardless, even when not part of Guile, I believe this code is very
useful for both the live-bootstrap project and Guix to get their Guile
bootstrapped. And even if nobody ever updates it for 3.0.6+, you can
always bootstrap the later versions from an earlier Guile. And maybe a
variation of it lands in GNU Mes, too.

Yes, that would be great.  We’ll have to take a closer look, but I’m
under the impression that a fruitful approach for Guile would be to have
it maintained in-tree; that would immediately benefit all distros.

Thanks!

Ludo’.

PS: Not all GNU packages require copyright assignment.  Guix doesn’t,
    for instance, and we’d be happy to get your contributions.  :-)

Other related posts: