Software releases: TypeCompose, Phooey, GuiTV

Three related software releases. I am very interested in comments and contributions.

TypeCompose provides some classes & instances for forms of type composition. It also includes a very simple implementation of data-driven computation. I factored it out of a new implementation of Phooey. Phooey is a library for functional user interfaces. Highlights in this 0.3 release:

  • Uses new TypeCompose package, which includes a simple implementation of data-driven computation.
  • New Applicative functor interface.
  • Eliminated the catch-all Phooey.hs module. Now import any one of Graphics.UI.Phooey.{Monad ,Applicative,Arrow}.
  • Phooey.Monad has two different styles of output widgets, made by owidget and owidget’. The latter is used to implement Phooey.Applicative.
  • Self- and mutually-recursive widgets now work again in Phooey.Monad. They wedge in Phooey.Arrow and Phooey.Applicative.

Phooey is also used in GuiTV, a library for composable interfaces and “tangible values”. I’ve also just updated GuiTV to 0.3, to sync with Phooey 1.0.


  1. laughedelic:

    Hello, Conal! Excuse me,, but I just want to ask, why don’t you support these wonderful libraries? I’ve just learned about them and I’m encouraged by this idea. But I have problems with building it on my system with ghc-6.10 or ghc-6.8. I don’t know where I can get help, so I’m writing here, sorry if I am tiresome.

    P.S. I beg your pardon for my awful english – I’m just a student from Russia (:

  2. conal:

    @laughedelic – Thanks for asking. TypeCompose is alive & well. Phooey & GuiTV have gotten rusty while I’ve been reworking FRP via the library Reactive. I’ll breathe life back into them within the next few months, I expect.

  3. laughedelic:

    Thanks for answer. I’ll be waiting… (:

Leave a comment