Utilization of user-defined operators in Fortran

Thank you for your valuable comments and questions.
I don’t have clear answers to when to use unary operators and what is superiorities over functions.

I used operators to express the intention of “imitating mathematical operators.”
Initially, I tried to create an operator (\nabla^2)^{-1} for solving Poisson equation, but I couldn’t. As a result of trial and error, I chose an expression like OpenFOAM:

fvVectorMatrix UEqn
(
    fvm::ddt(U)
  + fvm::div(phi, U)
  - fvm::laplacian(nu, U)
);

if (piso.momentumPredictor())
{
    solve(UEqn == -fvc::grad(p));
}

Therefore, the opinion that the unary operator does not offer much benefit over the corresponding functions is reasonable.

Your questions are linked to what I wanted to ask the community.
I could only find basic descriptions of user-defined operators in Fortran. Please let me know if you know the purpose or intention of providing the user-defined unary operator feature and past discussions about its usage.

Thank you.