Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

part A Write a function in Ocaml cond_dup : 'a list -> ('a -> bool) -> 'a list that takes in a list and predicate

part A

Write a function in Ocaml

cond_dup : 'a list -> ('a -> bool) -> 'a 

list that takes in a list and predicate and duplicates all elements which satisfy the condition expressed in the predicate. For example, cond_dup [3;4;5] (fun x -> x mod 2 = 1) = [3;3;4;5;5].

let rec cond_dup l f = (* YOUR CODE HERE *) raise (Failure "Not implemented") <-- remove when coded 
assert (cond_dup [3;4;5] (fun x -> x mod 2 = 1) = [3;3;4;5;5]) 

part B

Write a function in ocaml

n_times : ('a -> 'a) * int * 'a -> 'a 

such that n_times (f,n,v) applies f to v n times. For example, n_times((fun x-> x+1), 50, 0) = 50. If n<=0 return v.

let rec n_times (f, n, v) = (* YOUR CODE HERE *) raise (Failure "Not implemented") 
assert (n_times((fun x-> x+1), 50, 0) = 50)
Use Ocaml
use OCAML

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

Question

Describe the menstrual cycle in a woman.

Answered: 1 week ago

Question

Explain methods of metal extraction with examples.

Answered: 1 week ago

Question

5. Identify three characteristics of the dialectical approach.

Answered: 1 week ago

Question

6. Explain the strengths of a dialectical approach.

Answered: 1 week ago

Question

4. Explain the strengths and weaknesses of each approach.

Answered: 1 week ago