Question: Write a pure function cycle - streams that takes streams, xs and ys , and returns a stream. The streams may or may not be
Write a pure function cyclestreams that takes streams, xs and ys and returns a stream. The streams may or may not be the same length, and either one may be infinite, but you may assume they are both nonempty. The elements produced by the stream are pairs where the first part is from xs and the second part is from ys The stream returned by cyclestreams cycles forever through the streams xs and ys A constanttime
O
solution is possible.
Examples:
streamlist streamtake cyclestreams stream stream ab
abababab
Hint:
Write a function that creates a stream that endlessly cycles through all the elements of a single, given stream. You can use a local environment to bind a variable to the original stream. Write a helper function that uses this local environment to refer to the original stream when it runs out of elements to cycle through.
Compose this function with your streamzip to implement cyclestreams.
Step by Step Solution
There are 3 Steps involved in it
1 Expert Approved Answer
Step: 1 Unlock
Question Has Been Solved by an Expert!
Get step-by-step solutions from verified subject matter experts
Step: 2 Unlock
Step: 3 Unlock
