
On Fri, Mar 19, 2021, at 06:35, Simon Peyton Jones wrote:
You seem to be saying that we might extend ordinary types by including strictness information, UNPACK pragmas, anonymous records.
We already have an active proposal to add anonymous records, and I think there's a good case for adding strictness annotations to ordinary function types, at least for top-level arguments like in GADT signatures. But my bigger point is that this proposal argues that types and constructor signatures should be wholly separate beasts. I disagree. We should seek to minimize the difference between the two. I don't expect to make them identical (e.g. I don't see a use for UNPACK pragmas in function types), but a world where constructor sigs are a strict superset of types seems plausible, and change (2) moves us in that direction. That's why I'm in favor of (2) and against (1). Eric