public T Accept <T>(ChurchBooleanVisitor <T> visitor) => _x.Accept( new ChurchBooleanVisitor <T>( visitor.VisitTrue, _y.Accept(visitor)));
public T Accept <T>(ChurchBooleanVisitor <T> visitor) => visitor.VisitFalse;
public T Accept <T>(ChurchBooleanVisitor <T> visitor) => _x.Accept( new ChurchBooleanVisitor <T>( _y.Accept(visitor), visitor.VisitFalse));