That said, the last one isn't as easy to be understood as the first two. But you may notice another way of calling functions in
assess. Actually, there's one more,
PSNR()(noisy_img, img), which sometimes is called a functor in other languages, i.e., a class instance that behaves like a function.