Question: HASKELL QUESTION type Bag a = [a] sumB :: Eq a => Bag a -> Bag a -> Bag a -- add counts diffB ::

HASKELL QUESTION

type Bag a = [a]

sumB :: Eq a => Bag a -> Bag a -> Bag a -- add counts

diffB :: Eq a => Bag a -> Bag a -> Bag a -- diff b1 b2 subtracts counts of b2 from b1 (but not below 0)

unionB :: Eq a => Bag a -> Bag a -> Bag a -- take max of counts

intersectB :: Eq a => Bag a -> Bag a -> Bag a -- take min of counts

Assuming this representation, write definitions for each bag operation. Do NOT use explicit recursion.

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!