Re: InstanceSigs -- rationale for the "must be more polymorphic than"

Merijn Verstraaten <[email protected]> Mon, 20 Sep 2021 10:26:24 +0200
Newsgroups gmane.comp.lang.haskell.glasgow.user
Message-ID <[email protected]>
> On 18 Sep 2021, at 04:29, Anthony Clayden <[email protected]> wrote:
> "InstanceSigs is a mis-feature. Don't use it. It is less confusing to just give no signature at all. If you really, really want to bind tyvars, use PatternSignatures."

I would strongly disagree with this statement. I think instance signatures are a perfectly fine feature for the very simple case of "I want type signatures on my bindings, because I've got better stuff to do than memorising signatures or doing type inference in my head."

Does that mean they are superfluous, as your initial email suggests? Well, kinda, in the same way that "adding type signatures to top level bindings" is *technically* superfluous, but I still have those on all my top level bindings.

Characterising the extension as a miss-feature in the user guide seems weird for a perfectly usable and useful extension.

Cheers,
Merijn

_______________________________________________
Glasgow-haskell-users mailing list
[email protected]
http://mail.haskell.org/cgi-bin/mailman/listinfo/glasgow-haskell-users
signature.asc (application/pgp-signature, 833 B)
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEEs2xuEwXfu71sjsQ9OG0IFpDb2UAFAmFIRbAACgkQOG0IFpDb
2UBb/w/8ChLrhf2IS2KR21+3OTTBmmhamLA9ttyMy7ri2Dc9D2jPRzu7/HeKGzol
qBrNr5eCIKV6v/UpsvfW8tEvPNNhHFsx1PtER0HJwNOkfxo3ExjnVf5HIH3IOOz3
xw8IBEZuF69koIrTxMp9oCEYy3rPW9B/yoy7fq7TQTpXgsAmmL42NKDABgrnFSXz
Kiz6Oub0a8vCfx4sMRqCmsphlj9yLSOc6DJCo4F3Eaf8cPekuQBgUt+RoE+676Zb
jUcS+fS8Sw1p1dMhN+fQG2zTUGK7mlx6xfupnTqpNeXI+/q5pT08LMCHl1irPkOE
DYcNJCdistDLGn86ycI4v/mwm+0IH3iCN6jxq6Rl++a3VlFFosHYuVYHCY+ZIU/P
hDUMp/n4MYccHmBrxiWei+Up/TI5N0E+ovKhY6Msfv99Xqp4D5c6Fdm3JdO730/S
HSlIcsmNYNeFlH5sYRVLdzABBNTOffWl9XRIvV4Vy8B2LER5xrKQlZsIC+2EExr3
zI+H+g4gKG46aUN0cZUa1Enu+OkiELBtqj1RdaYbFSLO0cPYfwB7xYtOJjP4oZAg
hr2ts7BHpi3mg10Hrw4DDcgc7g/MuK+sR29+ZsCcO7mzBIfYObv1GGXMlifZPpd7
tjalLDKpShI4yhq7UqrwG5OeNAm7tBxoe2X6uNkK5P7obkAF2vc=
=kKAg
-----END PGP SIGNATURE-----