phooey: Functional user interfaces

[ bsd3, library, user-interfaces ] [ Propose Tags ]

Phooey is a library for functional UIs, providing three different functional interfaces: Monad, Applicative, and Arrow. See the correspondingly named modules in the list below. The other modules are exposed for extensibility.

Try out the examples in src/Examples/.

Because this library uses reactive, compile apps with -threaded.

See also

This page and the module documentation pages have links to colorized source code and to wiki pages where you can read and contribute /user comments/. Enjoy!

© 2006 by Conal Elliott; BSD3 license.

[Skip to Readme]
Versions [RSS] [faq] 0.1, 0.2.1, 0.3, 1.0, 1.2, 1.4, 2.0,
Change log CHANGES
Dependencies array, base, mtl, reactive, TypeCompose (>=0.2), wx, wxcore [details]
License BSD-3-Clause
Copyright (c) 2006 by Conal Elliott
Author Conal Elliott
Category User Interfaces
Home page
Uploaded by ConalElliott at 2007-12-28T01:26:53Z
Distributions NixOS:
Downloads 5043 total (18 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs uploaded by user
Build status unknown [no reports yet]




Maintainer's Corner

For package maintainers and hackage trustees


Readme for phooey-2.0

[back to package description]
Phooey is a library for functional user intefaces.  It's currently built
on wxHaskell, but could probably be tweaked to run on top of other
imperative UI libraries.  For a fuller description and link to
documentation, please see the project wiki page:

You can configure, build, and install all in the usual way with Cabal

  runhaskell Setup.lhs configure
  runhaskell Setup.lhs build
  runhaskell Setup.lhs install

See src/Examples.hs for examples.

The dependencies are recorded in phooey.cabal.  Besides base, you'll need
"mtl", "arrows" and the wxHaskell packages "wx" and "wxcore".  I've tested
Phooey with wxHaskell built on wxWidgets-2.4.2 and on wxWidgets-2.6.3.
Both work, but wxWidgets-2.4.2 is much friendlier with ghci, as it lets
you run more than one wxHaskell app (Phooey app) per ghci session.  With
wxWidgets-2.6.3, the ghci process will crash if you try to run two GUIs.
(True also for ghc-compiled code, but rarely problematic.)  Since there is
no known fix for for this crashing problem, I recommend wxWidgets-2.4.2.

If you find that Phooey doesn't work with some version of base, mtl,
arrows, wx, or wxcore, please let me know, and I'll update phooey.cabal