[ghc-steering-committee] #270: Support pun-free code, recommendation: accept

Vitaly Bragilevsky bravit111 at gmail.com
Sat Jan 29 15:41:05 UTC 2022


Dear Committee,

Proposal #270 "Support pun-free code" has been resubmitted by Artyom Kuznetsov.

https://github.com/ghc-proposals/ghc-proposals/pull/270

https://github.com/hithroc/ghc-proposals/blob/master/proposals/0000-support-pun-free-code.md

This proposal was heavily revised since Iavor recommended rejection.
As of now, it is quite thin suggesting just a couple of things:
- warnings for the code with panning (understood as using same names
for both types and values)
- a syntax change for import declarations to reflect which names
(types or values) are actually imported when importing from libraries
relied on punning.

The first change promotes a new style of writing Haskell code without
distinguishing types and values and having a single unified namespace.
We are already on that road anyway and I don't see any reason not to
support this.

The second change allows using an old style with punning. It could
lead to doubling import declarations, but I don't think that this is
really a problem.

I think the proposal is mature enough so I recommend acceptance.

We can also decide on the actual word used in import declarations
(data, value, or pattern). I personally prefer value, but I don't see
this issue as something important.

Vitaly


More information about the ghc-steering-committee mailing list