[Haskell-cafe] Call for GUI examples - Functional Reactive Programming
Heinrich Apfelmus
apfelmus at quantentunnel.de
Sat Jul 9 08:39:05 CEST 2011
David Virebayre wrote:
> Heinrich Apfelmus:
>
>> I want to hear!
>> Just a description. :) You can also mention why you find it interesting etc.
>
> Well I have an old program sitting around. Anyway, it's very simple :
>
> The GUI has
> - a window with a menu bar, 2 directory selects (source and dest
> directories), 1 file select ( the 'patch file'), 1 textview to write
> logging information, and a 'Convert' button to start.
> - an about window that opens from a 'About...' menuitem
> - A status bar.
>
> The convert button stats an action that scans all applicable files in
> a source directory, converts them and writes them in a destination
> directory.
>
> The conversion itself is irrelevant to the topic, in my case it
> consists in searching for patterns in the file and replacing them,
> according to a list of changes read from a file, the 'patch file'.
>
> The progression is logged in the textview: file processed, strings
> replaced. In the status bar, a percentage bar grows.
>
>
>
> Why do I find it interesting ?
>
> Most of the time I would do a program like the above with a command
> line interface only. GUI programming can be tedious. Would FRP offer a
> way to code such a simple, boring example in a fun way ?
>
> Also, FRP is often concerned with animations, but I'd really like to
> see if it works well for small utilities.
>
> I have an old source code I can share, using gtk2hs, imperative style
> (and also beginner-ugly style :) ). It's about 200 lines of codes and
> a glade file. It just compiled and ran fine here.
Interesting! This looks very much like a command-line program in
disguise, probably a perfect fit for Conal Elliott's tangible values.
http://www.haskell.org/haskellwiki/TV
Could you send me a few screenshots showing the program in action?
Best regards,
Heinrich Apfelmus
--
http://apfelmus.nfshost.com
More information about the Haskell-Cafe
mailing list