fcompose: Compose multiple functions

View source: R/fcompose.R

fcomposeR Documentation

Compose multiple functions

Description

Create a new function by composing several functions, applied from right to left. Equivalent to 'f1(f2(f3(...)))'.

Usage

fcompose(...)

Arguments

...

Functions to compose. Each must take a single argument and return an object compatible with the next function in the chain.

Value

A new function equivalent to nested application of the input functions.

Examples

square <- function(x) x^2
add1 <- function(x) x + 1

f <- fcompose(sqrt, square, add1)  # => sqrt(square(x + 1))
f(4)  # => sqrt((4 + 1)^2) = sqrt(25) = 5

# More compact
fcompose(log, exp)(2)  # log(exp(2)) = 2


functionals documentation built on Aug. 8, 2025, 7:32 p.m.