[ghc-steering-committee] Proposal #638: Prefix form for MkSolo# (Recommend Accept)

Matthías Páll Gissurarson mpg at mpg.is
Sat Mar 9 00:12:04 UTC 2024


Greetings committee!

In [proposal #638](https://github.com/ghc-proposals/ghc-proposals/pull/638),
@int-index proposes that we introduce a prefix form of MkSolo#, and
apparent oversight in proposal #475 [Non-punning list and tuple syntax](
https://github.com/ghc-proposals/ghc-proposals/pull/475).

Previously, you would write `(# a #)` to construct a `Solo# a`.
But the question is: what would be the prefix form of this constructor?
It can't be `(# #)`, because this is already defined as a constructor of
`Unit#`!

This amendment proposes the `MkSolo#` constructor, having us write `MkSolo#
a` for the prefix form. The discussion seems unanimous, after care was
taken to clarify that a fully applied `MkSolo# a` would still be pretty
printed as `(# a #)`, avoiding programmer confusion.

It seems quite straightforward to me, so:

I recommend accepting this amendment to #475.


-- 
--  Matthías Páll Gissurarson <http://mpg.is/>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-steering-committee/attachments/20240309/486897bc/attachment.html>


More information about the ghc-steering-committee mailing list