Scwm
Mer info
- Skapad av
- Maciej Stachowiak och Greg Badros
- År
- Typ
- Fönsterhanterare
- Licens
- GPL
Scheme Constraints Window Manager, en X11-fönsterhanterare som konfigurerades i Scheme och lät fönster hänga ihop genom villkor i en matematisk lösare.
Projektet startade 1997 vid University of Washington, där Maciej Stachowiak och Greg Badros tog FVWM:s C-kod och bytte ut konfigurationsfilen mot en inbäddad Guile-tolk. All logik, från tangentbindningar till fönsterplacering, skrevs i Scheme och kunde ändras under körning via ett socketgränssnitt, ungefär som Emacs i förhållande till sin elisp. Det ovanliga var det andra ordet i namnet. Badros forskade på villkorslösare, och Scwm lät användaren uttrycka saker som "det här fönstret ska alltid ligga till höger om det där" eller "de här två ska dela en kant", och lösaren Cassowary flyttade fönstren så att alla villkor höll.
Cassowary, som Badros skrev med Alan Borning, fick ett längre liv än fönsterhanteraren: samma algoritm ligger bakom Apples Auto Layout och en rad webblayoutmotorer. Stachowiak gick till Apple och var med och startade WebKit. Scwm själv tynade bort kring 2000, delvis för att GNOME och KDE tog över och delvis för att få ville skriva Scheme för att flytta ett fönster. Idén om en fönsterhanterare som ett programmeringsspråk fördes vidare av Sawfish, StumpWM och xmonad, alla utan villkorslösare.