I agree too.

Is there a ticket?   Does it emit a warning right now?

Simon

From: ghc-devs [mailto:[email protected]] On Behalf Of Richard 
Eisenberg
Sent: 11 December 2015 16:02
To: Michael Sloan <[email protected]>
Cc: [email protected]
Subject: Re: Unused type variables with non-linear patterns

I agree with Michael. This should not emit a warning.

While you're in this area, make sure that

> type instance F _ _ = Int

indeed matches `F Char Bool`. It's easy to imagine both underscores being 
treated as the same variable, which is not what the user intends.

Thanks,
Richard

On Dec 10, 2015, at 4:32 PM, Michael Sloan 
<[email protected]<mailto:[email protected]>> wrote:


I definitely think this should be considered a usage.  Ideally, you should 
always be able to resolve warnings, but there'd be no straightforward way to do 
so if LHS-only usages cause warnings.  Also, It's quite useful to use type 
variables only on the LHS.  Usage example: 
https://hackage.haskell.org/package/base-4.8.1.0/docs/src/Data.Type.Equality.html#EqStar<https://na01.safelinks.protection.outlook.com/?url=https%3a%2f%2fhackage.haskell.org%2fpackage%2fbase-4.8.1.0%2fdocs%2fsrc%2fData.Type.Equality.html%23EqStar&data=01%7c01%7csimonpj%40064d.mgd.microsoft.com%7c65bff682e66a434f1f1708d302447d3f%7c72f988bf86f141af91ab2d7cd011db47%7c1&sdata=gkgghrbPZ7shUtk4z2WesVVJaQD8wlKhlbXWmFHpjEs%3d>

-Michael

On Thu, Dec 10, 2015 at 6:48 AM, Jan Stolarek 
<[email protected]<mailto:[email protected]>> wrote:
An intersting thing came up when implementing warnings for unused type 
variables in type family
patterns (#10982 / D1576):

type family X a b where
  X a a = Int

Should we emit a warning that `a` is unused? It does not appear in the RHS but 
it is actually used
because of non-linear pattern. We can fix this by prefixing both appearances of 
`a` with an
underscore - this silences the warning and maintains semantics. Nevertheless, 
if a variable is
unused it should be perfectly valid to replace it with an underscore - that is 
not the case in
this example. Thoughts?

Janek

---
Politechnika Łódzka
Lodz University of Technology

Treść tej wiadomości zawiera informacje przeznaczone tylko dla adresata.
Jeżeli nie jesteście Państwo jej adresatem, bądź otrzymaliście ją przez pomyłkę
prosimy o powiadomienie o tym nadawcy oraz trwałe jej usunięcie.

This email contains information intended solely for the use of the individual 
to whom it is addressed.
If you are not the intended recipient or if you have received this message in 
error,
please notify the sender and delete it from your system.
_______________________________________________
ghc-devs mailing list
[email protected]<mailto:[email protected]>
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs<https://na01.safelinks.protection.outlook.com/?url=http%3a%2f%2fmail.haskell.org%2fcgi-bin%2fmailman%2flistinfo%2fghc-devs&data=01%7c01%7csimonpj%40064d.mgd.microsoft.com%7c65bff682e66a434f1f1708d302447d3f%7c72f988bf86f141af91ab2d7cd011db47%7c1&sdata=HZKgQKaUHcWjhAQNgfwXyK55SzqAgqhVevgpQRbyz5c%3d>

_______________________________________________
ghc-devs mailing list
[email protected]<mailto:[email protected]>
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs

_______________________________________________
ghc-devs mailing list
[email protected]
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs

Reply via email to