there are no known examples of binary matrix multiplication results which may used as decorators.

This is misleading. There are multiple libraries on PyPI that wrap up functions to add additional operators and methods including @ for compose. (It’s also been proposed and rejected repeatedly for the builtin type, going back to the rejected PEPs in 2000 that originally proposed a matmul operator.) And composing two decorators isn’t binary matrix multiplication, but it is a use of the @ operator; and it gives you results which could be used as decorators.

For example, if I have a logcall decorator that wraps its function with calls to logging.log that show when the function is entered and exited, and a daytime decorator that skips the function call if it’s nighttime, then logcall@daytime is a decorator which skips the function call if it’s nighttime but always logs either way, while daytime@logcall skips both.

I don’t think that this is a practical problem. I don’t know how often people use these libraries to compose decorators, but even if it’s very frequent (which it probably isn’t), it wouldn’t look at all ambiguous to a human to mix with this feature, because the following end up meaning the same thing:

    @daytime@logcall
    def cheese(…):

    @daytime
    @logcall
    def cheese(…):

Try it with composing decorators that take arguments and return the actual decorator, etc.; it’s never ambiguous or misleading to the reader.

So, I think the PEP can dismiss the problem, just not in the way it currently does.