[ghc-steering-committee] please accept "Make Symbol a newtype over String"
Adam Gundry
adam at well-typed.com
Thu Jan 19 20:35:41 UTC 2023
Thanks for reviving this proposal, Chris. I support acceptance (and am
happy to set aside the alternative of `type Symbol = String`, which is
distinctly less compelling than `type Nat = Natural`).
Adam
On 19/01/2023 16:07, Chris Dornan wrote:
> And I have replied -- anybody with views on how we do this should
> checkout out the discussions at
> https://github.com/ghc-proposals/ghc-proposals/pull/562#issuecomment-1397214914 <https://github.com/ghc-proposals/ghc-proposals/pull/562#issuecomment-1397214914>
>
>> On 2023-01-19, at 15:46, Simon Peyton Jones
>> <simon.peytonjones at gmail.com <mailto:simon.peytonjones at gmail.com>> wrote:
>>
>> > Oleg has proposed that we do essentially the same trick Richard
>> proposed to unify Nat and Natural, but with Symbol and String.
>>
>> Well... not quite. I have commented on the proposal
>> https://github.com/ghc-proposals/ghc-proposals/pull/562
>> <https://github.com/ghc-proposals/ghc-proposals/pull/562>
>>
>> Simon
>>
>> On Thu, 19 Jan 2023 at 15:28, Chris Dornan <chris at chrisdornan.com
>> <mailto:chris at chrisdornan.com>> wrote:
>>
>> While we are at it, here is another proposal that I think should
>> be straightforward.
>>
>> Oleg has proposed that we do essentially the same trick Richard
>> proposed to unify Nat and Natural, but with Symbol and String.
>>
>> Specifically, he is proposing that we replace @data Symbol@ with
>> @newtype Symbol = MkSymbol String at . I won't try and encapsulate
>> any further -- the original is concise and clear.
>>
>> * Oleg's "Make Symbol a newtype over String" proposal:
>> https://github.com/ghc-proposals/ghc-proposals/blob/symbol-type/proposals/0000-symbol-newtype-string.rst <https://github.com/ghc-proposals/ghc-proposals/blob/symbol-type/proposals/0000-symbol-newtype-string.rst>
>> * For comparison, Richard's accepted "Unify Nat and Natural"
>> proposal:
>> https://github.com/goldfirere/ghc-proposals/blob/natural/proposals/0000-unify-natural.rst <https://github.com/goldfirere/ghc-proposals/blob/natural/proposals/0000-unify-natural.rst>
>>
>> I suggest we allow the usual two weeks to speak or forever hold
>> your peace.
>>
>> Chris
--
Adam Gundry, Haskell Consultant
Well-Typed LLP, https://www.well-typed.com/
Registered in England & Wales, OC335890
27 Old Gloucester Street, London WC1N 3AX, England
More information about the ghc-steering-committee
mailing list