Differences between revisions 5 and 6
Revision 5 as of 2012-01-01 02:00:27
Size: 1111
Editor: BtTempleton
Comment: atom GC
Revision 6 as of 2012-03-13 19:30:58
Size: 1008
Editor: BtTempleton
Comment: autoconfiscation complete
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
## page was renamed from Software/GenericWindowManager
## page was renamed from GenericWindowManager
Line 9: Line 7:
 * {o} Use autotools instead of imake  * {*} Use autotools instead of imake

The Generic Window Manager is an X window manager originally developed by Colas Nahaboo as part of the Koala Project in 1988/1989. In early 2011, BtTempleton began updating it to use Guile Scheme as its extension language instead of WOOL, its idiosyncratic Lisp dialect. It currently works well on modern GNU/Linux systems and uses BDW-GC instead of its own garbage collector, but still uses WOOL for configuration.

TODO

  • Why are Num objects sometimes cast to pointers?

  • {o} Register finalizers for X pixmaps and cursors

  • {*} Use autotools instead of imake

  • {o} Wrap WOOL objects in smobs

After beguiling: fix X pixmap and cursor management (relying on finalizers is bad). GWM sometimes stores pointers in the server-side X resource database, and as part of the BDW-GC patch it stores those objects in a global list to keep them alive; it should do reference-counting or something.

Atoms are stored in a global hash table, so they'll never be freed.


CategorySoftware

GenericWindowManager (last edited 2012-03-13 19:30:58 by BtTempleton)