Re: [Sawfish] Re: Porting Sawfish to Racket

[ Thread Index | Date Index | More Archives ]

Hi William,

Hello Laurent,

Why do you think starting from scratch cost less than porting Sawfish to

Starting from scratch seemed to me a better option, because I don't know sufficiently the internals of Sawfish and Rep. I played with both of them a little, and I'm pretty sure Rep's lack of error checking and reporting would make any porting attempt a hell. There are slight but important differences between Rep and Racket (and quite probably with other Schemes) for the core (see the wikia page I cited above), and possibly heavy differences in the libraries, like threads, gui, etc.
Why do you think that a project Racket dependent is better than
being based on Rep?

Racket (like other Schemes, and unlike Rep) is a very mature Scheme, with lots of functionalities, a very helpful and responsive community. It is heavily tested and has a very good development design (e.g., automatic testing with thousands of tests before each release to avoid regressions).
Debugging with Racket is also very easy and nice, very much unlike Rep with which it's almost impossible (I don't know how they managed to build something as big as Sawfish with so little error reporting).
The DrRacket IDE is also very nice, and much better than Emacs on some aspects, because many things are integrated by default (but not as good on others probably).
From a language point of view Guile seems to be the
only Scheme interpreter currently bound to GTK+. I don't think it's
really relevant to switch from a Scheme-like interpreter to something
else without gain in portability.

The main reason is that I know Racket and not Guile.
I'm not sure about GTK+ and I don't want to say anything wrong, but Racket supports all main platforms for GUI programs (its GUI components have been entirely rewritten recently), through Cairo and Pango for X (see ). But I'm no export on graphics, so maybe I'm missing something.

That said, I wouldn't want to discourage anyone wanting to port Sawfish to any Scheme (although, alas, I see that my message was actually probably discouraging).


Mail converted by MHonArc 2.6.19+