| 1234567891011121314151617 |
- // compose.go
- package main
- import (
- "fmt"
- "math"
- )
- func Compose(f, g func(x float64) float64) func(x float64) float64 {
- return func(x float64) float64 { // closure
- return f(g(x))
- }
- }
- func main() {
- fmt.Print(Compose(math.Sin, math.Cos)(0.5)) // output: 0.7691963548410085
- }
|