From evenson.not.org at gmail.com Sun Nov 1 15:20:52 2020 From: evenson.not.org at gmail.com (Mark Evenson) Date: Sun, 1 Nov 2020 16:20:52 +0100 Subject: ABCL uses to recompile LCONS* form Message-ID: <2810B388-3DC5-4A74-8E25-4C048330A17E@gmail.com> Note to all: the abcl.lisp implementation inadvertenly contains a reference to LCONS*. Recompiling the form via SLIME once things have been loaded works fine. Any chance we can get a standard mechanism to recompile stuff in the implementation to declare that a given thunk should be recompiled once SWANK has finished loading? Back in 2017 or so, @aruttenburg had a patch to some of move the some of the utlities to load before the implementation-specific, but @stastats objected on the grounds that we want the initial load to be as fast and error free as possible. I really don’t want to redefine LCONS* in the ABCL specific code, but that will work for me if no one has a better idea. regards, Mark -- "No, this is not a disentanglement, but a progressive /knotting-into/." From stassats at gmail.com Sun Nov 1 16:21:26 2020 From: stassats at gmail.com (Stas Boukarev) Date: Sun, 1 Nov 2020 19:21:26 +0300 Subject: ABCL uses to recompile LCONS* form In-Reply-To: <2810B388-3DC5-4A74-8E25-4C048330A17E@gmail.com> References: <2810B388-3DC5-4A74-8E25-4C048330A17E@gmail.com> Message-ID: On Sun, Nov 1, 2020 at 6:22 PM Mark Evenson wrote: > > Note to all: the abcl.lisp implementation inadvertenly contains a reference to > LCONS*. > > > > Recompiling the form via SLIME once things have been loaded works fine. > > Any chance we can get a standard mechanism to recompile stuff in the > implementation to declare that a given thunk should be recompiled once SWANK > has finished loading? > > Back in 2017 or so, @aruttenburg had a patch to some of move the some of the > utlities to load before the implementation-specific, but @stastats objected on > the grounds that we want the initial load to be as fast and error free as > possible. I don't remember saying that or follow the logic here. From evenson.not.org at gmail.com Sun Nov 1 16:36:12 2020 From: evenson.not.org at gmail.com (Mark Evenson) Date: Sun, 1 Nov 2020 17:36:12 +0100 Subject: ABCL uses to recompile LCONS* form In-Reply-To: References: <2810B388-3DC5-4A74-8E25-4C048330A17E@gmail.com> Message-ID: > On Nov 1, 2020, at 17:21, Stas Boukarev wrote: > > On Sun, Nov 1, 2020 at 6:22 PM Mark Evenson wrote: >> >> Note to all: the abcl.lisp implementation inadvertenly contains a reference to >> LCONS*. […] >> Back in 2017 or so, @aruttenburg had a patch to some of move the some of the >> utlities to load before the implementation-specific, but @stastats objected on >> the grounds that we want the initial load to be as fast and error free as >> possible. > I don't remember saying that or follow the logic here. My apologies for incorrectly paraphrasing your position. Let me try to restate: the ABCL implementation would like to use some of the machinery from swank.lisp, such as the [lazy list macroization][1]. The changes we requested were admittedly jumbled up in whole bunch of other issues, which we eventually resolved by judicious trimming [2][3]. How could we ensure that SWANK:LCONS* is present when we load the abcl implementation specific code? [1]: [2]: https://github.com/slime/slime/pull/502/commits/1c4681da458470987393ed5a2a4ab555a7d4d30c [3]: https://github.com/slime/slime/pull/502/commits/1911dcfbe1dbf3445bb41c0483967095cf3c2046 -- "No, this is not a disentanglement, but a progressive /knotting-into/." From stassats at gmail.com Sun Nov 1 16:39:54 2020 From: stassats at gmail.com (Stas Boukarev) Date: Sun, 1 Nov 2020 19:39:54 +0300 Subject: ABCL uses to recompile LCONS* form In-Reply-To: References: <2810B388-3DC5-4A74-8E25-4C048330A17E@gmail.com> Message-ID: I don't see any problem with moving things to whenever they're needed. On Sun, Nov 1, 2020 at 7:36 PM Mark Evenson wrote: > > > > > On Nov 1, 2020, at 17:21, Stas Boukarev wrote: > > > > On Sun, Nov 1, 2020 at 6:22 PM Mark Evenson wrote: > >> > >> Note to all: the abcl.lisp implementation inadvertenly contains a reference to > >> LCONS*. > > […] > > >> Back in 2017 or so, @aruttenburg had a patch to some of move the some of the > >> utlities to load before the implementation-specific, but @stastats objected on > >> the grounds that we want the initial load to be as fast and error free as > >> possible. > > I don't remember saying that or follow the logic here. > > My apologies for incorrectly paraphrasing your position. > > Let me try to restate: the ABCL implementation would like to use some of the > machinery from swank.lisp, such as the [lazy list macroization][1]. The > changes we requested were admittedly jumbled up in whole bunch of other issues, > which we eventually resolved by judicious trimming [2][3]. How could we ensure > that SWANK:LCONS* is present when we load the abcl implementation specific code? > > [1]: > [2]: https://github.com/slime/slime/pull/502/commits/1c4681da458470987393ed5a2a4ab555a7d4d30c > [3]: https://github.com/slime/slime/pull/502/commits/1911dcfbe1dbf3445bb41c0483967095cf3c2046 > > -- > "No, this is not a disentanglement, but a progressive /knotting-into/." > From evenson.not.org at gmail.com Sun Nov 1 16:48:27 2020 From: evenson.not.org at gmail.com (Mark Evenson) Date: Sun, 1 Nov 2020 17:48:27 +0100 Subject: ABCL uses to recompile LCONS* form In-Reply-To: References: <2810B388-3DC5-4A74-8E25-4C048330A17E@gmail.com> Message-ID: <8CB2F18C-45E1-4022-AD2F-729F86FCF57E@gmail.com> > On Nov 1, 2020, at 17:39, Stas Boukarev wrote: > > I don't see any problem with moving things to whenever they're needed. Alright, I’ll try to summon the cycles to make a decent merge request. Thanks for the feedback. -- "No, this is not a disentanglement, but a progressive /knotting-into/."