<div dir="auto">> Richard O'Keefe wrote:</div><div dir="auto"><pre style="white-space:pre-wrap;background-color:rgb(255,255,255)">> ... More seriously, in "f x", there is an explicit
> operator already. It's "f". The space is needed for lexical
> reasons only. If you say no, functions are not operators --
> though in Haskell infix operators are functions -- but
> application is the operator, so you should write "<a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe">f @ x</a>" (usual
> FP notation) or "f.x" (Dijkstra), then although it isn't
> technically true, I've always felt that there is an infinite
> regress lurking in the background:
> if x + y means (+) x y
> which really stands for (+)@x <a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe">@</a> y
> then shouldn't that in turn stand for (@)((@)(+)x)y
> and what should _that_ stand for?
Heh, heh there's another corner where Haskell semantics appears to give an infinite regress;</pre><pre style="white-space:pre-wrap;background-color:rgb(255,255,255)">and we have to suppose there's some internal magic that can't be expressed in the surface language:</pre><pre style="white-space:pre-wrap;background-color:rgb(255,255,255)">Report section 6.4.1 Numeric Literals. <span style="font-family:-apple-system,HelveticaNeue">"An integer literal represents the application of the function `fromInteger` to the appropriate value of type `Integer`."</span></pre><pre style="white-space:pre-wrap;background-color:rgb(255,255,255)"><span style="font-family:-apple-system,HelveticaNeue">OK. How do we write in Haskell that "appropriate value"?</span></pre><pre style="white-space:pre-wrap;background-color:rgb(255,255,255)"><span style="font-family:-apple-system,HelveticaNeue">We could write `7 :: Integer` but that's shorthand for `(fromInteger #7#) :: Integer`, in which I've used `#7#` to denote the "appropriate value" doo-hickey. There's no way in Haskell to write a literal that's type `Integer`, except by invoking `fromInteger`.</span></pre><pre style="white-space:pre-wrap;background-color:rgb(255,255,255)"><span style="font-family:-apple-system,HelveticaNeue">`(fromInteger (7 :: Integer)) :: Integer` ? Both the explicit and implicit `fromInteger` in there are no-ops.</span></pre><pre style="white-space:pre-wrap;background-color:rgb(255,255,255)"><span style="font-family:-apple-system,HelveticaNeue"><br></span></pre><pre style="white-space:pre-wrap;background-color:rgb(255,255,255)"><span style="font-family:-apple-system,HelveticaNeue">AntC</span></pre></div>