Adding to lasseespeholt's answer, if you define Compose as an extension method (renamed "Then" so that the result makes more sense):
public static Func Then(this Func f, Func g)
{
return x => g(f(x));
}
you can make this fluent:
var h = toUpper.Then(replicate); // .Then(trim) etc...