public static class Program
public static Func<A, B> f = (A a) => new B();
public static Func<B, C> g = (B b) => new C();
public static Func<A, C> h = (A a) => g(f(a));
public static void Main()
Console.WriteLine(c.ToString());
public readonly record struct A { }
public readonly record struct B { }
public readonly record struct C { }