[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#53878] [PATCH v5 00/22] Update Racket to 8.4. Adjust Chez Scheme pa
From: |
Philip McGrath |
Subject: |
[bug#53878] [PATCH v5 00/22] Update Racket to 8.4. Adjust Chez Scheme packages. |
Date: |
Sat, 26 Feb 2022 12:31:01 -0500 |
Hi,
On Saturday, February 26, 2022 11:14:38 AM EST Liliana Marie Prikler wrote:
> Hi,
>
> Am Samstag, dem 26.02.2022 um 10:36 -0500 schrieb Philip McGrath:
> > Hi,
> >
> > On Saturday, February 26, 2022 10:08:30 AM EST Liliana Marie Prikler
> >
> > wrote:
> > > Am Samstag, dem 26.02.2022 um 08:02 -0500 schrieb Philip McGrath:
> > > > I realized that, if we just pass the origin some other way than
> > > > as the 'source' field, we can avoid adding the
> > > > "chez-and-racket-bootstrap.scm" file
> > > > altogether: patch v5 10/22 does the core of that.
> > >
> > > I did miss that nugget when I skimmed it first; is there a reason
> > > to prefer overloading unpack and redirecting it to (package-source
> > > racket-vm-bc) over doing the same, but using simply #$%racket-
> > > origin?
> >
> > I like this:
> > > > + (replace 'unpack
> > > > + (lambda args
> > > > + (unpack #:source #$(or (package-source this-
> > > > package)
> > > > + (package-source racket-
> > > > vm-bc)))))
> >
> > rather than:
> >
> > (unpack #:source #$(package-source racket-vm-bc))
> >
> > to make it easier for a user to provide an alternate source.
>
> Hmm, to be fair this would probably respect --with-source, which I was
> missing, but I'm not sure how deep into the bootstrap we could inject
> this. Sadly, we can't make chez-scheme-for-racket itself a
> transformation.
>
> > My concern with:
> >
> > (unpack #:source #$(or (package-source this-package) %racket-
> > origin))
> >
> > is less strong, but if `(gnu packages racket)` exports `%racket-
> > origin`, it
> > seems like it would be very tempting to put it in a `source` field,
> > but of course that would cause problems. My hope was that having to
> > write `(package-source racket-vm-bc)` might prompt a little more
> > thought.
>
> Hmm. And what if we go my earlier route of defining this as a
> procedure in chez and instantiating it inside racket.scm? We should
> not get a cycle triggered by chez-scheme-for-system if we do, but we
> might get one if we attempt to bind it to a variable in racket.scm.
>
> That aside, there is also the possibility of using a gexp promise as
> source, as is done for example in the case of linux-libre. If we wrap
> the chez side in a promise, that ought to resolve the cycle as well.
>
Interesting ... I'll have to take a look at that.
In the medium term, for Racket packages, I think the 'racket-build-system'
ought to provide some support for using a different Racket. For Chez Scheme
packages it's probably less complicated. (At least, I've had no problems with
the things I've tried.)
For now, mostly I thought it would be very surprising if `unpack` silently
ignored the package's `source` and unpacked something else, instead.
> > > BTW for the record, if you're dropping one of my mails from the
> > > CCs, please make sure to include the gmail account rather than my
> > > institute mail. This one is technically supposed to be for work
> > > and I'm using a rather loose interpretation of "ensuring that
> > > software is up-to-date" as part of my work when I do comment on
> > > Guix issues from it.
> >
> > Will do, sorry! (I've been experimenting with MUAs recently and not
> > getting everything right—you may have noticed I sent mail earlier
> > from an address I wasn't intending to use.)
>
> I haven't noticed, but thanks for pointing this out. If a commit from
> the wrong address does make it into our git history, please do point
> that out; I'll be happy to adjust the mailmap for you.
>
Thankfully git and git-send-email have been fine; only a couple prose messages
came from the wrong address.
-Philip
signature.asc
Description: This is a digitally signed message part.
- [bug#53878] [PATCH v5 17/22] gnu: Add chez-nanopass., (continued)
- [bug#53878] [PATCH v5 17/22] gnu: Add chez-nanopass., Philip McGrath, 2022/02/26
- [bug#53878] [PATCH v5 18/22] gnu: chez-scheme: Explicitly package bootstrap bootfiles., Philip McGrath, 2022/02/26
- [bug#53878] [PATCH v5 16/22] gnu: Add stex., Philip McGrath, 2022/02/26
- [bug#53878] [PATCH v5 21/22] gnu: chez: Add 'chez-scheme-for-system'., Philip McGrath, 2022/02/26
- [bug#53878] [PATCH v5 19/22] gnu: chez-mit: Support chez-scheme-for-racket., Philip McGrath, 2022/02/26
- [bug#53878] [PATCH v5 20/22] gnu: Add chez-scheme-for-racket., Philip McGrath, 2022/02/26
- [bug#53878] [PATCH v5 22/22] gnu: racket-vm-cs: Build with "--enable-scheme"., Philip McGrath, 2022/02/26
- [bug#53878] [PATCH v5 00/22] Update Racket to 8.4. Adjust Chez Scheme packages., Liliana Marie Prikler, 2022/02/26
- [bug#53878] [PATCH v5 00/22] Update Racket to 8.4. Adjust Chez Scheme packages., Philip McGrath, 2022/02/26
- [bug#53878] [PATCH v5 00/22] Update Racket to 8.4. Adjust Chez Scheme packages., Liliana Marie Prikler, 2022/02/26
- [bug#53878] [PATCH v5 00/22] Update Racket to 8.4. Adjust Chez Scheme packages.,
Philip McGrath <=
[bug#53878] [PATCH v6 00/24] Update Racket to 8.4. Adjust Chez Scheme packages., Philip McGrath, 2022/02/26
[bug#53878] [PATCH v6 04/24] gnu: racket-minimal: Use new package style., Philip McGrath, 2022/02/26
[bug#53878] [PATCH v6 05/24] gnu: racket-minimal: Don't configure non-existant catalogs., Philip McGrath, 2022/02/26
[bug#53878] [PATCH v6 06/24] gnu: racket-minimal: Change inheritance to follow bootstrapping., Philip McGrath, 2022/02/26
[bug#53878] [PATCH v6 08/24] gnu: racket-minimal: Add "debug" output., Philip McGrath, 2022/02/26
[bug#53878] [PATCH v6 07/24] gnu: racket-minimal: Adjust indentation., Philip McGrath, 2022/02/26