[Haskell-beginners] 'Simple' function
Steven Williams
theblessedadventhope at gmail.com
Wed Jun 10 16:47:54 UTC 2015
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Here is return's type signature:
return :: Monad m => a -> m a
What you are doing with the do notation can also be expressed as ioStr
>> = (\str -> return str).
do notation and bind both require you to have a value that has the
same monad as before.
Steven Williams
My PGP Key: http://pgp.mit.edu/pks/lookup?op=get&search=0xCACA6C74669A54
FA
On 10/06/15 12:35, Mike Houghton wrote:
> Hi,
>
> I’ve been tryimg to write a function with signature
>
> asString :: IO String -> String
>
>
> Does someone please have the patience to explain to me what the
> compiler error messages really mean for these two attempts and
> exactly what I’m doing (!!!) If I *do not* give this function any
> type signature then it works i.e..
>
> asString ioStr = do str <- ioStr return $ str
>
> and the compiler tells me its signature is
>
> asString :: forall (m :: * -> *) b. Monad m => m b -> m b
>
> which, at this stage of my Haskell progress, is just pure Voodoo.
> Why isn’t it’s signature asString :: IO String -> String ?
>
>
> Another naive attempt is asString ioStr = str where str <- ioStr
>
> and then compiler says parse error on input ‘<-’
>
>
> Many Thanks
>
> Mike
>
> _______________________________________________ Beginners mailing
> list Beginners at haskell.org
> http://mail.haskell.org/cgi-bin/mailman/listinfo/beginners
>
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2
iQIcBAEBAgAGBQJVeGo5AAoJEMrKbHRmmlT6N8UP/i/tAhDtyHiG3sgH3e5xAqyt
JAsyX2JaBQVjERRVaJQy1+Pg9hNdGBCrVljxY0BH5B8np956bnuIEyZKtSc2i2Jc
HM0lBesyzCYqw29QxAyFFno07iXQllocZaHUIgC4AoNYO5zNGSPYcNaB4O5SYoKl
83Cjz97BHgAHkvHpsLDLOpizOkP+CsXwi8s/KRKoidLkbQpmv9SpqiFvmm9u+UK1
emZF/4veFE4Ay3AvIsxMpn7M5hVoKgat1xyGX02IrenvkOL69IIYc+4OvzK49Lxg
e8jrAehJDMh+U7zN+qVCY1ZyJbJF+uGawFC+XoswOdAra+Q23te77RKkligkmN7s
ACut72hwTejZN/sIaORqZXuy+HUY1LjlJnlz0RCdG1CLkr3EaKG5ZCX3E2N8RnxL
1CKtEdtFJGDeBcIBh5my/7IC22loTpVhBhPU2DPo+iOP2sRsUs0nllbqbjGfGpuE
m37dR/tfq9FKwqYS5RUuAcZ8fWuPdojmO2WvI4thHBGJhsRK4gqhAI4MnKLHBEoL
xfyHSaoFif/jC7peF/+ZPjKSsIpCJU+R/tDUBM9u22o3IVeTs1sWGZXM7J32tlGc
K/MTF/F3phcxwSCqb99WBHhXOIkKSgp47gx1INgDZFug/CgjUI1Sl4jvZ5j/45D5
+RlHcYv+qp4J8nI59pFW
=Vunc
-----END PGP SIGNATURE-----
More information about the Beginners
mailing list