`==` for `ComposedFunction` falls back to egal, c.f. https://github.com/JuliaLang/julia/blob/bd47eca2c8aacd145b6c5c02e47e2b9ec27ab456/base/Base.jl#L165 Does it make sense to define something like ```julia function Base.:(==)(cf1::ComposedFunction, cf2::ComposedFunction) cf1.inner == cf1.inner && cf2.outer== cf2.outer end ``` related PR for `Accessors.jl`: https://github.com/JuliaObjects/Accessors.jl/pull/146