[GHC] #11170: (read ".9") :: Double unable to parse
GHC
ghc-devs at haskell.org
Sun Dec 6 18:25:23 UTC 2015
#11170: (read ".9") :: Double unable to parse
-------------------------------------+-------------------------------------
Reporter: varosi | Owner:
Type: bug | Status: closed
Priority: normal | Milestone:
Component: Prelude | Version: 7.10.2
Resolution: invalid | Keywords: Read
Operating System: Windows | Architecture: x86_64
Type of failure: Incorrect result | (amd64)
at runtime | Test Case:
Blocked By: | Blocking:
Related Tickets: | Differential Rev(s):
Wiki Page: |
-------------------------------------+-------------------------------------
Changes (by nomeata):
* status: new => closed
* resolution: => invalid
Comment:
It actually is parseable, if you put parens around it:
{{{#!hs
> :t (.4)
(.4) :: Num (a -> b) => (b -> c) -> a -> c
}}}
The problem here is that `.` is an operator, so it parses it as `\x -> (.)
x 4` (which would type check if you have have an instance `Num (a -> b)`).
This is the correct behaviour according to the language specification, and
definitely nothing a compiler should do different.
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/11170#comment:1>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list