
Well, this is just a matter of refactoring some stuff here. You can notice
that most work is defining several small callbacks so its not really that
complex. I tend to use that style of nested let's because it saves the
time: no need to write boilerplate parameter passing, just use what is
defined in scope. If you cut out callbacks and GUI code you are left with
literally 8 non-empty lines. Its not that bad for a main.
Honestly I don't see why do you think Haskell sucks here. This is just
plain GTK. If anything it is better with Haskell thanks to static typing,
higher order functions, great runtime with GC and other stuff. Equivalent
application in plain C would be much longer and carry more bugs, and Python
GTK apps are a mess really.
Can you actually point to any GTK MVP framework out there?
On Mon, Jun 10, 2013 at 12:00 PM, Giacomo Tesio
This is the point: in https://github.com/Tener/sheep-transfer/blob/master/src/sheep-gtk.hs the main function requires 196 lines!
How can this be acceptable? GTK is a good toolkit by itself. As far as I can see, the problem here is haskell: I can't see how I can build a simple, basic MVP framework on top of gtk2hs.
Probably I've finally found something relevant at which Haskell sucks. Still I can't understand how haskellers code GUI when they really need to. Do they use another language and interact with haskell programs via pipes?
Giacomo
On Mon, Jun 10, 2013 at 11:17 AM, Krzysztof Skrzętnicki
wrote: If you want a bit more complex GTK programs you can look at these:
https://github.com/Tener/spike -- web browser https://github.com/Tener/sheep-transfer -- local network file sharing
However, I'm *not* satisfied by the current state of GUI programming in Haskell. Both programs above are using GTK just because there is nothing better. GTK is a pain to install on Windows too.
On Mon, Jun 10, 2013 at 10:58 AM, Giacomo Tesio
wrote: Thanks, but no, it doesn't help... I have to stick with GTK.
Most of the GUI examples I saw are toy programs. Leksah is a notable exception, but it's way too complex to be a useful learning tool.
In OO languages, I'm used to the MVP pattern which helps to organize the code. But I'm finding so complex building GUI in haskell that I'm starting to think that it's not a good choice for such task.
Giacomo
On Mon, Jun 10, 2013 at 2:52 AM, Tim Perry
wrote: Did you try this: http://en.m.wikibooks.org/wiki/Haskell/GUI
I hope it helps. Tim
On Jun 9, 2013, at 10:22 AM, Giacomo Tesio
wrote: I have to write a "simple" GUI that plot some timeseries with a few parameterization (dates, times and so on...). The task should be simple, but I'm find using the GTK binding quite weird.
I'm surprised that nothing better exists for GUI programming in haskell. I read a few about FRP but AFAIK it doesn't adress simple desktop UI full of input to validate and grid/tree to show.
Any suggestion? I've already read the pages on Hackage without much success. At least, can someone point me to the right direction for the codebase organization?
Giacomo
_______________________________________________ Beginners mailing list Beginners@haskell.org http://www.haskell.org/mailman/listinfo/beginners
_______________________________________________ Beginners mailing list Beginners@haskell.org http://www.haskell.org/mailman/listinfo/beginners
_______________________________________________ Beginners mailing list Beginners@haskell.org http://www.haskell.org/mailman/listinfo/beginners
_______________________________________________ Beginners mailing list Beginners@haskell.org http://www.haskell.org/mailman/listinfo/beginners
_______________________________________________ Beginners mailing list Beginners@haskell.org http://www.haskell.org/mailman/listinfo/beginners