Differences between revisions 4 and 5
Revision 4 as of 2011-04-03 01:53:51
Size: 1040
Editor: BtTempleton
Comment: categorize
Revision 5 as of 2012-01-01 02:00:27
Size: 1111
Editor: BtTempleton
Comment: atom GC
Deletions are marked like this. Additions are marked like this.
Line 14: Line 14:
Atoms are stored in a global hash table, so they'll never be freed.

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

  • {o} 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)