Fill in the skeleton given for pipe which uses foldl' to get a function pipe :: [(a -> a)] →> (a -> a) such that pipe [f1,...,fn] x (where f1,..., fn are functions!) should return f1(f2(...(fn x))). Again, your task is to fill in the appropriate values for 1. the step function f and 2. the base cas base. Once you have implemented the function, you should get the following behavior: ghci> pipe [] 3 3 ghci> pipe [(\x -> x+x), (\x -> x + 3)] 3 12 ghci> pipe [(\x -> x * 4), (\x -> x + x)] 3 24

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
| `pipe [f1,..., fn] x` should return `f1 (f2(... (fn x)))`
>>> pipe [] 3
3
>>> pipe [(x −> x+x), (\x -> x + 3)] 3
12
>>> pipe [(\x -> x * 4), (\x -> x + x)] 3
24
pipe: [(a -> a)] -> (a -> a)
pipe fs
= foldLeft f base fs
where
f a x = error "TBD: pipe: f"
base = error "TBD: pipe: base"
Transcribed Image Text:48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 | `pipe [f1,..., fn] x` should return `f1 (f2(... (fn x)))` >>> pipe [] 3 3 >>> pipe [(x −> x+x), (\x -> x + 3)] 3 12 >>> pipe [(\x -> x * 4), (\x -> x + x)] 3 24 pipe: [(a -> a)] -> (a -> a) pipe fs = foldLeft f base fs where f a x = error "TBD: pipe: f" base = error "TBD: pipe: base"
Fill in the skeleton given for pipe which uses foldl' to get a function
pipe :: [(a -> a)] -> (a -> a)
such that pipe [f1,...,fn] x (where f1,..., fn are functions!) should return
f1(f2(...(fn x))) .
Again, your task is to fill in the appropriate values for
1. the step function f and
2. the base case base.
Once you have implemented the function, you should get the following behavior:
ghci pipe [] 3
3
ghci> pipe [(\x −> x+x), (\x −> x + 3)] 3
12
ghci> pipe [(\x -> x * 4), (\x -> x + x)] 3
24
0₁
Transcribed Image Text:Fill in the skeleton given for pipe which uses foldl' to get a function pipe :: [(a -> a)] -> (a -> a) such that pipe [f1,...,fn] x (where f1,..., fn are functions!) should return f1(f2(...(fn x))) . Again, your task is to fill in the appropriate values for 1. the step function f and 2. the base case base. Once you have implemented the function, you should get the following behavior: ghci pipe [] 3 3 ghci> pipe [(\x −> x+x), (\x −> x + 3)] 3 12 ghci> pipe [(\x -> x * 4), (\x -> x + x)] 3 24 0₁
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 4 steps with 2 images

Blurred answer
Knowledge Booster
Fibonacci algorithm
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education