Sawfish is an extensible window manager using an Emacs Lisp-like scripting language--all window decorations are configurable, the basic idea is to have as much user-interface policy as possible controlled through the Lisp language. This is no layer on top of twm, but a wholly new architecture. Despite this extensibility its policy is currently very minimal compared to most window managers. Its aim is simply to manage windows in the most flexible and attractive manner possible. As such it does not implement desktop backgrounds, applications docks, or other things that may be achieved through separate applications. All high-level wm functions are implemented in Lisp for future extensibility or redefinition. Currently this includes menus (using GTK2+), interactive window moving and resizing, virtual workspaces, iconification, focus/transient window policies, frame theme definitions and much more.