Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

** I Need help with the following questions on my F# Review with explanation please! :) ** 1) Which of the following F# expressions is

** I Need help with the following questions on my F# Review with explanation please! :) **

1) Which of the following F# expressions is not well typed? Select one:

a) 2 + 5 * 10

b) 10I * 20I

c) 4 + 5.6

d) "4" + "5.6"

2) A curried function has a type of which form? Select one:

a) t1 * t2 -> t3

b) t1 -> t2 * t3

c) t1 -> (t2 -> t3)

d) (t1 -> t2) -> t3

3) If an F# function has type 'a -> 'b when 'a : comparison, which of the following is not a legal type for it? Select one:

a) (float -> float) -> bool

b) string -> (int -> int)

c) int -> int

d) int list -> bool list

4) Which of the following statements about F# lists is not true? Select one:

a) They are immutable.

b) Their built-in functions are polymorphic.

c) They can be of any length.

d) They can be heterogeneous.

5) Which of the following F# expressions evaluates to [1; 2; 3]? Select one:

a) 1::2::3::[]

b) 1@2@3@[]

c) [1; 2; 3]::[]

d) ((1::2)::3)::[]

6) How does F# interpret the expression List.map List.head foo @ baz? Select one:

a) (List.map List.head) (foo @ baz)

b) ((List.map List.head) foo) @ baz

c) List.map (List.head (foo @ baz))

d) (List.map (List.head foo)) @ baz

7) How does F# interpret the type int * bool -> string list? Select one:

a) (int * (bool -> string)) list

b) ((int * bool) -> string) list

c) int * (bool -> (string list))

d) (int * bool) -> (string list)

8) Let F# function foo be defined as follows:

let rec foo = function | (xs, []) -> xs | (xs, y::ys) -> foo (xs@[y], ys) 

If foo is supposed to append its two list parameters, which of the following is true? Select one:

a) foo fails Step 1 of the Checklist for Programming with Recursion.

b) foo fails Step 2 of the Checklist for Programming with Recursion.

c) foo fails Step 3 of the Checklist for Programming with Recursion.

d) foo satisfies all three steps of the Checklist for Programming with Recursion.

9) Which of the following is the type that F# infers for (fun f -> f 17)? Select one:

a) ('a -> 'b) -> 'b

b) (int -> int) -> int

c) (int -> 'a) -> 'a

d) ('a -> 'a) -> 'a

10) Which of the following has type int -> int list? Select one:

a) (@) [5]

b) [fun x -> x+1]

c) fun x -> 5::x

d) fun x -> x::[5]

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Students also viewed these Databases questions