[racket] Porting Sawfish to Racket

From: Laurent (laurent.orseau at gmail.com)
Date: Sat Nov 10 22:33:00 EST 2012

Dear Sawfish and Racket users,

After roughly estimating the effort required to port Sawfish to Racket (
http://sawfish.wikia.com/wiki/Porting_Sawfish_to_Racket ), I found that it
would be too much work and would probably not be the best option. The
effort required before having anything usable would just be too big. So I
started a new project from scratch ( https://github.com/Metaxal/RWind/ ),
which is currently in a minimal but usable state (for testing purposes).
Even though it's not Sawfish, it's aimed at being very similar to it
(extensibility, scripting in Scheme, console, etc.), but of course its
current state is nowhere near Sawfish.

However, I believe its development should be greatly simplified thanks to
Racket and DrRacket and its wonderful debugging messages and facilities
than using C and Rep. It avoids C altogether thanks to Jon Rafkind's X11
bindings using the foreign function interface (
https://github.com/kazzmir/x11-racket , which also provides xlambda, a
simple rewriting of xmonad, due to Kevin Tew).

I'm going to run low on spare time, so anyone willing to help (even with
very small increments) is welcome. And of course I can help anyone wanting
to get started but doesn't know where to begin. Critics and ideas are also
welcome (now is a good time for them, later may be too late to change


On Thu, Oct 25, 2012 at 1:12 PM, Laurent <laurent.orseau at gmail.com> wrote:

> (cross-post sawfish, racket)
> Hi all,
> Only very recently have I discovered the excellent, simple and lispy
> window manager Sawfish ( http://sawfish.wikia.com/ ), after being
> frustrated with Compiz and Metacity and wanting to do what I really want to
> do with my windows (tried xmonad, wished it would force me to learn
> Haskell, but couldn't stand the syntax. Plus it seemed too constrained to
> me).
> However, Sawfish uses an outdated and specific Scheme-like language named
> Rep, and the maintainers are currently looking for a replacement with less
> flaws and which would be better and actively maintained.
> Racket ( http://www.racket-lang.org/ ) has been suggested on several
> occasions, among other languages (e.g., Chicken, or even Python).
> I personally love Racket and would be very happy to have it in Sawfish
> (actually I want a Racket-machine), especially when it comes to debugging
> (couldn't yet figure out a good way to do that cleanly).
> Although there is little chance (unfortunately) that I can/will invest a
> lot of energy and time in trying to port Sawfish to Racket, I figured that
> if I could help the process a little, things may move slightly faster. So I
> started a page on Sawfish's wiki to try to evaluate what needs to be done
> and what are the biggest problems to solve:
> http://sawfish.wikia.com/wiki/Porting_Sawfish_to_Racket
> It's currently in a stub state, but I will add information with time as I
> use and understand Rep (and Racket better). But there are people out there
> who know one or both of them better than me, so please contribute to the
> page as you see fit.
> My $0.02, waiting for the ultimate window manager,
> Laurent
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.racket-lang.org/users/archive/attachments/20121111/dc7e249a/attachment.html>

Posted on the users mailing list.