Question: functional programming in haskell 5. (a) What is the type of the following unknown6 function? Give the most general type and include any required class
functional programming in haskell
5. (a) What is the type of the following unknown6 function? Give the most general type and include any required class constraints. The ($) is the low-precedence application operator. (I give several versions below, with and without the $).
> unknown6 m n = take m (map ($ n) . map (*) $ [1..]) > unknown6' m n = take m (map (\f -> f n) . map (*) $ [1..]) > unknown6'' m n = take m ((map (\f -> f n) . map (*)) [1..])
(The 3 definitions above are identical. Use whichever one you are comfortable with ). Note: *Main> ($5)(*)2 <-- prefix notation 10 *Main> (*)2$5 <-- infix notation 10 *Main> (\f -> f 5) (*2) <-- prefix notation 10 *Main>
(b) Give a description of what the unknown6 function in part (a) does. Describe what it does, not how it works.
(c) Give a non-trivial test case for the unknown6 function in part (a) and show the expected results.
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
