[Haskell-beginners] help with type error in a wxHaskell program

David McBride toad3k at gmail.com
Sat Nov 21 15:02:39 UTC 2015


The type of frame according to the documentation is frame :: [Prop
<http://hackage.haskell.org/package/wx-0.92.1.0/docs/Graphics-UI-WX-Attributes.html#t:Prop>
(Frame
<http://hackage.haskell.org/package/wx-0.92.1.0/docs/Graphics-UI-WX-Frame.html#t:Frame>
())] -> IO
<http://hackage.haskell.org/package/base-4.8.1.0/docs/System-IO.html#t:IO> (
Frame
<http://hackage.haskell.org/package/wx-0.92.1.0/docs/Graphics-UI-WX-Frame.html#t:Frame>
()).  Maybe the documentation you are looking at is out of date?

On Sat, Nov 21, 2015 at 8:28 AM, Jason J. Corso <jjcorso at eecs.umich.edu>
wrote:

> Hi:
>
> I'm new to Haskell and to wxHaskell (but found playing with wxHaskell
> to be a nice mid-ground between my years of imperative experience and
> the pure functional).  Thanks for the help.
>
> I wrote the following code to create a set of staticText widgets by
> mapping the layout over a list.  Easy enough...
>
> module Main where
> import Graphics.UI.WX
> main :: IO ()
> main
>     = start gui
> gui :: IO ()
> gui = do
>         f <- frame
>         let s = map (\t -> staticText f [text := show t]) [1..10]
>         set f [layout := margin 10 ( row 2 $ map (\x -> (widget x)) s)]
>
>
> But, I get a type error that I do not understand
>
>     Couldn't match expected type ‘IO (Window a0)’
>                 with actual type ‘[Prop (Frame ())] -> IO (Frame ())’
>     Probable cause: ‘frame’ is applied to too few arguments
>
>
> Thank you in advance,
> Jason
> _______________________________________________
> Beginners mailing list
> Beginners at haskell.org
> http://mail.haskell.org/cgi-bin/mailman/listinfo/beginners
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/beginners/attachments/20151121/fa778601/attachment.html>


More information about the Beginners mailing list