editable (hackage): Editable can derive editors for data types.  Add deriving Generic and instance Editable Foo to your data type, and you can launch an editor for it with editor :: Editable a => a -> IO a.
Keywords: bsd2|data|library|haskell