I agree too.
Is there a ticket? Does it emit a warning right now?
Simon
From: ghc-devs [mailto:ghc-devs-bounces@haskell.org] On Behalf Of Richard Eisenberg
Sent: 11 December 2015 16:02
To: Michael Sloan
Cc: ghc-devs@haskell.org
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 mailto:mgsloan@gmail.com> 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...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 mailto:jan.stolarek@p.lodz.pl> 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
ghc-devs@haskell.orgmailto:ghc-devs@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devshttps://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
ghc-devs@haskell.orgmailto:ghc-devs@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs