Allow top-level shadowing for imported names?

Michael Sloan mgsloan at gmail.com
Thu Oct 6 02:59:51 UTC 2016


On Wed, Oct 5, 2016 at 7:05 PM, Brandon Allbery <allbery.b at gmail.com> wrote:
>
> On Wed, Oct 5, 2016 at 10:02 PM, Michael Sloan <mgsloan at gmail.com> wrote:
>>
>> What if instead we re-framed this as a "top-level where clause", like
>> this:
>>
>> main :: IO ()
>> main = putStrLn ("Hi" <> "There")
>>
>> other-function :: IO ()
>> other-function = putStrLn ("I can " <> "also use it")
>>
>> -- NOTE: 0 indent!
>>
>> where
>>     (<>) :: String -> String -> String
>>     (<>) = (++)
>
>
> This would actually be slightly odd parse-wise, as we're already *in* an
> unindented where clause (module ... where)

Ahh, of course!  Good point, that makes this idea rather unappealing -
it is indeed inconsistent.  Just throwing ideas out there!

> --
> brandon s allbery kf8nh                               sine nomine associates
> allbery.b at gmail.com                                  ballbery at sinenomine.net
> unix, openafs, kerberos, infrastructure, xmonad        http://sinenomine.net


More information about the ghc-devs mailing list