123456789101112131415161718 |
- #!/usr/bin/ruby
- func compose(f,g) {
- func (*args) {
- f(g(args...));
- }
- }
- var cube = func(a) { a.pow(3) };
- var croot = func(a) { a.root(3) };
- var flist1 = [Number.method(:sin), Number.method(:cos), cube];
- var flist2 = [Number.method(:asin), Number.method(:acos), croot];
- flist1.range.each { |i|
- say compose(flist1[i], flist2[i])(0.5);
- }
|