Function Composition ==================== ```Example from 1 languages: JavaScript function o(f, g) { return function(x) { return f(g(x)); } } ``` ```Example from 1 languages: C# // Call example: // var c = Compose(f, g); // // Func<int, bool> g = _ => ... // Func<bool, string> f = _ => ... Func<TIn, TOut> Compose<TIn, TMid, TOut>(Func<TMid, TOut> f, Func<TIn, TMid> g) => _ => f(g(_)); ``` ```Example from 1 languages: Haskell foo = f . g ``` ```Example from 1 languages: APL foo←f∘g ``` ```Example from 1 languages: Coconut (f..g..h)(x, y, z) ``` ```Example from 1 languages: Lil on o f g do on _ x do f[g[x]] end end ``` ```Example from 1 languages: Raku my &foo = &f ∘ &g; ``` ```Example from 1 languages: fp /+∘α(bu + 1):<1,2,3,4,5,6,7,8,9,10> ``` * Languages *with* Function Composition include JavaScript, C#, Haskell, APL, Coconut, Lil, Raku, fp * Languages *without* Function Composition include C3 * View all concepts with or missing a *hasFunctionComposition* measurement http://pldb.info/../lists/explorer.html#columns=rank~id~appeared~tags~creators~hasFunctionComposition&searchBuilder=%7B%22criteria%22%3A%5B%7B%22condition%22%3A%22null%22%2C%22data%22%3A%22hasFunctionComposition%22%2C%22origData%22%3A%22hasFunctionComposition%22%2C%22type%22%3A%22num%22%2C%22value%22%3A%5B%5D%7D%5D%2C%22logic%22%3A%22AND%22%7D missing http://pldb.info/../lists/explorer.html#columns=rank~id~appeared~tags~creators~hasFunctionComposition&searchBuilder=%7B%22criteria%22%3A%5B%7B%22condition%22%3A%22!null%22%2C%22data%22%3A%22hasFunctionComposition%22%2C%22origData%22%3A%22hasFunctionComposition%22%2C%22type%22%3A%22num%22%2C%22value%22%3A%5B%5D%7D%5D%2C%22logic%22%3A%22AND%22%7D with * Read more about Function Composition on the web: 1. https://en.wikipedia.org/wiki/Function_composition_(computer_science) 1. Built with Scroll v178.2.3