Hi Paulo,

Not to discourage other answers to your call for opinions, but here's
mine.

Granting your point about the structure of the code in Chez Scheme,
everything is relative. I still think Chez Scheme is a better starting
point than the existing Racket implementation as code to reorganize,
document, and improve. Adding a comment or two in the source is likely
a part of that process. :) We're not at a point where it makes sense to
recommend big changes to the organization of the Chez Scheme source,
but that could happen.

I think you're mistaken about Andy and Kent's position on Chez Scheme.
They will certainly not distance themselves from the project any more
than I could conceivably distance myself from Racket. But they have
priorities besides improving something that is probably just about
perfect for their purposes.

We're under no illusion that moving to Chez Scheme will change much
about who contributes to the core Racket implementation. Based on past
experience (e.g, moving `racket/gui` from C++ to Racket), the
contributor rolls will grow, but not radically. I'm delighted that you
have been willing try a RISC-V port, and even the attempt is a kind of
success and will help things improve things through feedback like this.

Personally, while my contributions to Chez Scheme so far have been
modest, I have already factored into my costs the worst-case scenario
of fully maintaining Chez Scheme as used by Racket. Even if that
happens, it still looks like a good deal in the long run.

Matthew

At Tue, 5 Feb 2019 14:01:07 +0100, "'Paulo Matos' via Racket Users" wrote:
> Hi all,
> 
> Now that I got your attention... :)
> Although the title is not purely click-bait, it is motivated by personal
> requirements.
> 
> Most of us are happy with the move to Chez (actually haven't heard
> anyone opposing it), but I would like to point to something I have felt
> over the past year and to understand if this is just my feeling or not
> from others (maybe Matthew) who have had any experience working with Chez.
> 
> I have been, for over a year on and off, trying to port Chez to RISC-V.
> My problem here is really understanding the Chez arquitecture, rather
> than the RISC-V one with which I have been working for a few years now
> as a consultant.
> 
> The whole point of the work was not to get Chez on RISC-V per se but to
> get Racket on RISC-V. My initial email to the Chez ML was replied to by
> Andy Keep. He replied in great detail on how to create a Chez backend -
> I have cleaned up his reply and have been slowly adding to it [1].
> 
> That was a great start but from there things started to fall apart.
> Further emails to my questions were generally not replied to (of the 4
> messages sent, 1 was replied to) [2].
> 
> Then there is some backend rot... I noticed for example, that there was
> no Makefile for a threaded version of arm32 although the backend file is
> there meaning it should be supported. It seems that it's just that
> nobody every tried to build it. Then software floating point is an
> option in a backend config file but if you enable it, bootstrapping
> doesn't work because the compiler really expects you to have some
> floating point registers.
> 
> Matthew mentions the move to Chez will help maintainability and I am
> sure he's right because he has been working with Racket for a long time
> but my experience comes from looking at backend files. When you look at
> them you end up being forced to look elsewhere, specifically the
> cpnanopass.ss file [3]. Well, this file is the stuff of nightmares...
> It's over 16000 (sixteen thousand!!!) lines of dense scheme code, whose
> comments are not necessarily Chez-Beginner friendly (maybe Alexis wants
> to rewrite it? [4]).
> 
> So I am a bit concerned about this. I somehow get the feeling that
> what's going to happen is that Chez is going to slowly degenerate to a
> Racket sub-project, and nobody is going to really use Chez directly.
> Therefore this means Matthew et al. will end up maintaining it along
> with Racket itself. As far as I understand it, both A. Keep and R.
> Dybvig are both at Cisco and Chez is a side-project from which they are
> slowly distancing themselves. Chez becoming a sub-project of Racket
> might seem far-fetched until you noticed Matthew is already the number 4
> contributor of Chez since it was open-sourced [5].
> 
> The only question I have is really, what do other people feel about
> this. Am I making any sense? Have I missed some hidden Chez community
> that's working day and night into improving it? Or is Chez current sole
> purpose of existence to support Racket?
> 
> [1] https://github.com/LinkiTools/ChezScheme-RISCV/blob/wip-riscv/PORTING.md
> [2]
> https://groups.google.com/forum/#!searchin/chez-scheme/Paulo$20Matos%7Csort:dat
> e
> [3] https://github.com/cisco/ChezScheme/blob/master/s/cpnanopass.ss
> [4] https://twitter.com/lexi_lambda/status/1092539293791330305
> [5] https://github.com/cisco/ChezScheme/graphs/contributors
> 
> -- 
> Paulo Matos
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "Racket Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to racket-users+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to