[Haskell-beginners] Questions on type declarations
brandon s allbery kf8nh
allbery.b at gmail.com
Sat Oct 6 02:06:24 CEST 2012
On Friday, 5 October 2012 at 19:55, thorsopia at lavabit.com wrote:
> - getArgs :: IO [String]
>
> It can get several params, but its type declaration looks like it gets
> none.
>
>
It doesn't get any Haskell parameters; it retrieves OS-level (not Haskell-level) parameters to the program. If you know Perl, it's the difference between @_ and @ARGV; if Python, the difference between local parameters and sys.argv. You might infer from the fact that other languages also distinguish, that there is an actual difference between function parameters and program parameters; if you are not clear on this, you will need to figure it out regardless of the language you're working with.
> - dispatch :: [(String, [String] -> IO ())]
Looks to me like it's described fairly well by the text. What is your confusion?
It is an association list: a list of pairs, the first element being a key and the second being a value. The value in this case is a function which takes a list of strings and produces an IO action.
--
brandon s allbery kf8nh sine nomine associates
allbery.b at gmail.com ballbery at sinenomine.net
unix/linux, openafs, kerberos, infrastructure http://sinenomine.net
Sent with Sparrow (http://www.sparrowmailapp.com/?sig)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/beginners/attachments/20121005/0c1ac587/attachment.htm>
More information about the Beginners
mailing list