Scwm

Last updated
Scwm
Scwm-constraints.png
Scwm showing the constraints manager in action
Developer(s) Greg Badros
Maciej Stachowiak
Initial release1997
Stable release
0.99.6.2 / 12 March 2000;18 years ago (2000-03-12)
Written in GNU Guile
Website sourceforge.net/projects/scwm/
scwm.mit.edu (Historical)Archive index at the Wayback Machine.

Scwm or Scheme Constraints Window Manager is a window manager for the X Window System. Its main features are dynamic configurability and programmability via a language based on GNU Guile and the embedded arithmetic Cassowary constraint solver. The primary developers were Greg Badros and Maciej Stachowiak.

X window manager software for Unix type operating systems

An X window manager is a window manager which runs on top of the X Window System, a windowing system mainly used on Unix-like systems.

X Window System windowing system for bitmap displays on UNIX-like systems

The X Window System is a windowing system for bitmap displays, common on Unix-like operating systems.

GNU Guile Scheme interpreter

GNU Ubiquitous Intelligent Language for Extensions is the preferred extension language system for the GNU Project, which features an implementation of the programming language Scheme. Its first version was released in 1993. In addition to large parts of Scheme standards, Guile Scheme includes modularized extensions for many different programming tasks.

The constraint solver is used to constrain window behavior. For example, one can constrain two windows to have equal height, or to force the distance between two windows to be constant. In real time, the Cassowary constraint solver re-solves the system of equalities and inequalities and applies the new mathematical solution to the on-screen layout, animating windows to their new positions. Other features include flexible GUI-driven customization and per window decoration settings (per window 'themes').

Scwm, like many window managers, began from Fvwm, another highly configurable window manager. [1] Scwm development has been stagnant since 2000 when Badros completed his Ph.D. at the University of Washington; the last updates to the git repository have focused on maintaining compatibility with Guile 2.0.x.

University of Washington public research university in Seattle, Washington, United States

The University of Washington is a public research university in Seattle, Washington.

Scwm is released under the GNU GPL [2]

Related Research Articles

The GNU Compiler Collection (GCC) is a compiler system produced by the GNU Project supporting various programming languages. GCC is a key component of the GNU toolchain and the standard compiler for most Unix-like operating systems. The Free Software Foundation (FSF) distributes GCC under the GNU General Public License. GCC has played an important role in the growth of free software, as both a tool and an example.

GnuCash accounting software

GnuCash is an accounting program that implements a double-entry bookkeeping system. It was initially aimed at developing capabilities similar to Intuit, Inc.'s Quicken application, but also has features for small business accounting. Recent development has been focused on adapting to modern desktop support-library requirements.

IceWM

IceWM is a stacking window manager for the X Window System graphical infrastructure, written by Marko Maček. It was written from scratch in C++ and is released under the terms of the GNU Lesser General Public License. It is relatively lightweight in terms of memory and CPU usage, and comes with themes that allow it to imitate the GUI of Windows 95, Windows XP, Windows 7, OS/2, Motif, and other graphical user interfaces. IceWM is meant to excel in look and feel while being lightweight and customizable.

GNU TeXmacs word processor

GNU TeXmacs is a scientific word processor and typesetting component of the GNU Project. It was inspired by TeX and GNU Emacs, though it shares no code with those programs. TeXmacs does use TeX fonts. It is written and maintained by Joris van der Hoeven. The program produces structured documents with a WYSIWYG user interface. New document styles can be created by the user. The editor provides high-quality typesetting algorithms and TeX fonts for publishing professional looking documents.

In computer science, constraint programming is a programming paradigm wherein relations between variables are stated in the form of constraints. Constraints differ from the common primitives of imperative programming languages in that they do not specify a step or sequence of steps to execute, but rather the properties of a solution to be found. This makes constraint programming a form of declarative programming. The constraints used in constraint programming are of various kinds: those used in constraint satisfaction problems, linear inequalities, and others. Constraints are usually embedded within a programming language or provided via separate software libraries.

twm window manager

twm is a window manager for the X Window System. Started in 1987 by Tom LaStrange, it has been the standard window manager for the X Window System since version X11R4. The name originally stood for Tom's Window Manager, but the software was renamed Tab Window Manager by the X Consortium when they adopted it in 1989. twm is a stacking window manager that provides title bars, shaped windows and icon management. It is highly configurable and extensible.

FVWM

The F Virtual Window Manager is a virtual window manager for the X Window System. Originally a twm derivative, FVWM has evolved into a powerful and highly configurable environment for Unix-like systems.

Free Pascal Free compiler and IDE for Pascal and ObjectPascal

Free Pascal Compiler (FPC) is a compiler for the closely related programming language dialects, Pascal and Object Pascal. It is free software released under the GNU General Public License, with exception clauses that allow for static linking against its runtime libraries and packages for any purpose in combination with any other software license.

In artificial intelligence and operations research, constraint satisfaction is the process of finding a solution to a set of constraints that impose conditions that the variables must satisfy. A solution is therefore a set of values for the variables that satisfies all constraints—that is, a point in the feasible region.

Macintosh-Like Virtual Window Manager

MLVWM or Macintosh-Like Virtual Window Manager, is an FVWM descendant created by Takashi Hasegawa in 1997 while studying at Nagoya University and was written entirely in the C programming language. As its name implies, it attempts to emulate the pre-Mac OS X Macintosh look and feel in its layout and window design.

Cassowary is an incremental constraint solving toolkit that efficiently solves systems of linear equalities and inequalities. Constraints may be either requirements or preferences. Client code specifies the constraints to be maintained, and the solver updates the constrained variables to have values that satisfy the constraints.

Linux Family of free and open-source software operating systems based on the Linux kernel

Linux is a family of free and open-source software operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution.

COIN-OR organization

Computational Infrastructure for Operations Research (COIN-OR), is a project that aims to "create for mathematical software what the open literature is for mathematical theory." The open literature provides the operations research (OR) community with a peer-review process and an archive. Papers in operations research journals on mathematical theory often contain supporting numerical results from computational studies. The software implementations, models, and data used to produce the numerical results are typically not published. The status quo impeded researchers needing to reproduce computational results, make fair comparisons, and extend the state of the art.

SLiM X Window System session manager

Simple Login Manager (SLiM) is a graphical display manager for the X Window System that can be run independently of any window manager or desktop environment. SLiM aims to be light, completely configurable, and suitable for machines on which remote login functionalities are not needed.

Nix is a cross-platform package management system. Differing from traditional package managers, Nix utilizes a purely functional deployment model where software is installed into unique directories generated through cryptographic hashes. Dependencies from each software are included within each hash, solving the problem of dependency hell. This novel approach to package management promises to generate more reliable, reproducible, and portable packages.

GNU Emacs GNU version of the Emacs text editor

GNU Emacs is the most popular and most ported Emacs text editor. It was created by GNU Project founder Richard Stallman. In common with other varieties of Emacs, GNU Emacs is extensible using a Turing complete programming language. GNU Emacs has been called "the most powerful text editor available today". With proper support from the underlying system, GNU Emacs is able to display files in multiple character sets, and has been able to simultaneously display most human languages since at least 1999. Throughout its history, GNU Emacs has been a central component of the GNU project, and a flagship of the free software movement. GNU Emacs is sometimes abbreviated as GNUMACS, especially to differentiate it from other EMACS variants. The tag line for GNU Emacs is "the extensible self-documenting text editor".

Dantzig–Wolfe decomposition is an algorithm for solving linear programming problems with special structure. It was originally developed by George Dantzig and Philip Wolfe and initially published in 1960. Many texts on linear programming have sections dedicated to discussing this decomposition algorithm.

Maciej Stachowiak Polish Computer scientist

Maciej Stachowiak is a Polish American software developer currently employed by Apple Inc., where he is a leader of the development team responsible for the Safari web browser and WebKit Framework. A longtime proponent of open source software, Stachowiak was involved with the SCWM, GNOME and Nautilus projects for Linux before joining Apple. He is actively involved the development of web standards, and is a co-chair of the World Wide Web Consortium's HTML 5 working group and a member of the Web Hypertext Application Technology Working Group steering committee.

Alan H. Borning is an American Computer Scientist noted for his research on human computer interaction and object-oriented programming. In particular his research in human-computer interaction is on designing for human values. He works on systems to support civic engagement and deliberation, and works on tools to make public transportation easier to use. He has also worked on constraint-based languages and systems, and cooperating constraint languages and solvers.

References

  1. "To create SCWM, Stachowiak started with the source code for Robert Nation's FVWM window manager and gradually replaced the original home-grown configuration language with Guile." pg 93 of Blandy 1997
  2. http://sourceforge.net/projects/scwm/
Notes
Peter H. Salus American computer programmer

Peter H. Salus is a linguist, computer scientist, historian of technology, author in many fields, and an editor of books and journals. He has conducted research in germanistics, language acquisition, and computer languages. He has a 1963 PhD in Linguistics from New York University.

International Standard Book Number Unique numeric book identifier

The International Standard Book Number (ISBN) is a numeric commercial book identifier which is intended to be unique. Publishers purchase ISBNs from an affiliate of the International ISBN Agency.