Exercise1-41 <---> Exercise1-43
Exercise 1.42
Let f and g be two one-argument functions. The composition f after g is defined to be the function x↦f(g(x)). Define a procedure compose that implements composition. For example, if inc is a procedure that adds 1 to its argument,
((compose square inc) 6)
49
Scheme solution:
(define (compose f g)
(lambda (x) (f (g x))))
Haskell already has a standard composition operator named (.). It could have been defined like this:
(.) f g x = f (g x)
OCaml solution:
let compose f g x = f (g x)
Standard ML already has a standard composition operator named "o". It could have been defined like this:
fun op o (f, g) x = f (g x)
Exercise1-41 <---> Exercise1-43