texmacs-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Texmacs-dev] TeXmacs with S7 Scheme


From: Massimiliano Gubinelli
Subject: Re: [Texmacs-dev] TeXmacs with S7 Scheme
Date: Thu, 31 Dec 2020 11:01:20 +0100

Hi Joris,

> On 31. Dec 2020, at 10:33, TeXmacs <texmacs@lix.polytechnique.fr> wrote:
> 
> Hi Max,
> 
> On Wed, Dec 30, 2020 at 10:38:08AM +0100, Massimiliano Gubinelli wrote:
>> From my point of view is unclear what is the best decision for the long term 
>> future of TeXmacs. Currently I see two reliable alternatives:
>> 
>> 1) We stick to Guile 1.8. We can just integrate it in our codebase (as we do 
>> with PDFWriter) and strip away all the parts we do not need, so that it is 
>> easier to maintain and compile in Windows and packageable in Linux. 
>> 
>> 2) Follow Guile developers into Guile 3+ and maintain compatibility with 
>> Guile 1.8 as a fallback. On Linux we link against Guile 2/3 and on the other 
>> platforms we use the best alternative we have.
> 
> For the moment, I think that we can stick to (1).  This does not prevent us 
> from
> reorganizing our module code and tm-define such that TeXmacs works flawlessly
> with Guile 3.  This would be a welcome effort anyway, since even if Guile 
> drops
> its support for other OSs, then we might need such a reorganization to move to
> another Scheme implementation.  After all the trouble we went through to make 
> TeXmacs
> available on all platforms, I don't think that it is a good long term plan to 
> rely
> on a library that is limited to only a few platforms, especially for a 
> programming
> language like Scheme.


I agree with this. I would like to reorganise a bit the progs/kernel 
subdirectory to better factor the code which depends on the specificities of 
the various implementations, maybe also remove some very old code related to 
Guile 1.4 (and 1.6?) and before,  and make the codebase work with Guile 1.8 
(and S7) but also compatible with compiled schemes like (Guile 2/3).

Actually the larger changes will be related to Guile 2/3 since the way we have 
to handle some expand time computation has to be changed (e.g. all the plugin 
installation macros). But I know understand quite well this issue and my Guile 
2 branch seems to work fine, I just need to improve it and make my changes 
cleaner. They are anyway backward compatible with older Guiles.

It does not seems to me even impossible to use the best Scheme available: Chez 
Scheme: I was looking into that and it has enough embedding facilities to make 
it possible. Chez Scheme is essentially the fastest compiled scheme on the 
market, it is backed by Cisco and it works everywhere. Recently the Racket 
project changed their scheme implementation with that of Chez Scheme. So 
somehow people tend to agree that so far is the best around. Maybe in the 
future Guile 3 will be as fast but again, I'm worried about support for Windows.

I think I will continue to experiment a bit around these topics. 

Best,
Max

> 
> Best wishes, --Joris
> 
> _______________________________________________
> Texmacs-dev mailing list
> Texmacs-dev@gnu.org
> https://lists.gnu.org/mailman/listinfo/texmacs-dev




reply via email to

[Prev in Thread] Current Thread [Next in Thread]