fmap

import System.Process
import System.IO.Temp      -- dependencies: * temporary
import GHC.Vacuum.GraphViz --               * vacuum-graphviz

:{
let __spawn_graph xs = void $ do {
    view_png <- return $ system . ("feh " ++);
    withSystemTempFile "vacuum" $ \ path _ ->
        vacuumToPng path xs >>= view_png;
    }
:}

:def graph \xs -> return $ "__spawn_graph (" ++ xs ++ ")"

-- :graph Data.Set.fromList [1..20]