When comparing Xmonad vs Slate, the Slant community recommends Slate for most people. In the question“What is the best window manager for Mac?” Slate is ranked 2nd while Xmonad is ranked 17th. The most important reason people chose Slate is:
Ranked in these QuestionsQuestion Ranking
Pro Efficient to use
XMonad is a very minimal and efficient window manager, especially if the user is familiar with Haskell.
Pro Fully extensible with Haskell
XMonad is written, configured, and fully extensible in Haskell. This means that users aren't limited to a small set of pre-programmed layouts and actions: anything can be programmed into the configuration.
It's simple to modify basic settings, and the example config has lots of comments to get you started. Haskell keeps this code clean, concise, and readable, and its type system keeps you safe from any serious mistakes. This makes it fast and light, even on very small and slow systems.
Pro Very stable
Use of Haskell, in conjunction with smart programming practices, guarantees a crash-free experience.
Pro Absolutely minimal
The entire window manager is extremely small, and includes nothing beyond basic window manipulation and tiling. Out of the box, there are no window decorations, status bar nor icon dock; just clean lines and efficiency.
Pro Highly configurable
If you enjoy programming, you can even add features to XMonad to make it your perfect desktop environment, and the Contrib modules give you most of what you need to do exactly that.
Pro Great availability of libraries
The use of Haskell as an extension language means that popular pieces of functionality are easily shared and widely available as Haskell Libraries. Many default layouts, and tools for quickly and easily building your own, are available through XMonad-contrib, and highly re-usable configurations are commonly shared through blog articles and the Xmonad Wiki. The documentation in XMonad-contrib is very clear and easy to read.
Pro Xinerama support
XMonad has full support for Xinerama: windows can be tiled and managed across multiple physical screens.
Pro Edit configuration and reload on-the-fly
Configuration is compiled into the WM, and it can be changed/updated on-the-fly, without requiring a full reload.
Pro Handles multiple monitors well
XMonad can handle multi-monitor setups by default.
Pro Dynamic Tiling
XMonad uses dynamic tiling which means that it automatically handles arranging your windows into various layouts which the user can cycle through.
Pro Intuitive model which separates "screens" and "workspaces"
XMonad separates screens and workspaces. A screen "projects" a workspace. You can put a window to a specific screen, regardless of which workspace is currently projected onto that screen. This is more intuitive than other WMs e.g. i3, which only has the notion of workspace but not "screen" and requires you to remember workspace numbering. It is especially beneficial for multi-monitor setups.
Pro Extremely configurable
Pro It's free
Slate is completely free to download and use, which is a great option in a field of Mac WMs that often costs money to use.
Pro Lets you set default layouts
By using a feature called "snapshots", users can set up different default window layouts in Slate that they can switch to and from on the fly.
Pro Allows for tiling
Slate allows for customizing the config file in order to emulate tiling windows.
Pro Window hints
Slate offers window hints which are an intuitive way to change window focus.
Pro Based on hotkeys
Hotkeys can be set to re-size and focus windows, as well as activate layout presets.
Con Steep learning curve for uninitiated users
Like a lot of tiling window managers, the learning curve for XMonad is quite steep.
Con Requires knowledge of Haskell for configuration
Understanding of Haskell is required in order to configure XMonad.
Con Requires a lot of Haskell dependencies
XMonad depends on GHC (the Glasgow Haskell Compiler) which can take up about 700 MB or disk space.
Con Project maintainance is on pause
The developer is currently taking a pause to focus on other things as of December 2015.
Con Hard to configure
There's no graphical user interface for configuring Slate, meaning it has to be done from the command line interface or by editing a config file. This makes it somewhat difficult and time-consuming.
Con Missing features
Unable to perform all tasks of software it was meant to replace.
Can not move windows between 'Spaces' (virtual desktops).
Con Video fail
Demonstration video failed to highlight any of the advantages of the windowing system. Or at least, the advantages were so subtly intrinsic that no-one who didn't already use the system could appreciate them.