[ghc-steering-committee] #668: Allow reserved identifiers as fields in OverloadedRecordDot, recommendation: accept

Malte Ott malte.ott at maralorn.de
Wed Apr 9 22:13:23 UTC 2025


I like this a lot. In favor!

On 2025-04-09 10:02, Simon Peyton Jones via ghc-steering-committee wrote:
>    I'm thumbs up -- but I have added a post with a list of suggested
>    presentational cleanups.
> 
>    (Adam if you are worn out I suppose I could execute on them myself.  I
>    don't want to keep erecting new obstacles.)
> 
>    Simon
> 
>    On Wed, 9 Apr 2025 at 03:31, Jakob Brünker via ghc-steering-committee
>    <[1]ghc-steering-committee at haskell.org> wrote:
> 
>    Hi,
> 
>    The updated proposal looks good to me!
> 
>    Jakob
> 
>    On Tue, Apr 8, 2025 at 11:00 AM Adam Gundry via ghc-steering-committee
>    <[2]ghc-steering-committee at haskell.org> wrote:
> 
>      I have now updated this proposal on the basis of the vote:
> 
>      [3]https://github.com/ghc-proposals/ghc-proposals/pull/668
> 
>      Please take a look and let me know if you are happy with the current
> 
>      state of the PR, or have any remaining concerns.
> 
>      Thanks,
> 
>      Adam
> 
>      P.S. I will be away on holiday over the next couple of weeks, so
>      apologies in advance for any delays in response.
> 
>      On 07/04/2025 16:21, Adam Gundry via ghc-steering-committee wrote:
>      > Thanks everyone for your responses to this. There seems to be a
>      fairly
>      > clear consensus that the preferred option is B. (5 votes have B in
>      first
>      > place, then 3 others either rate A and B equally or weakly prefer
>      A to
>      > B.) Thus I plan to revise the proposal accordingly.
>      >
>      > Adam
>      >
>      >
>      >
>      > On 02/04/2025 10:26, Matthías Páll Gissurarson via
>      > ghc-steering-committee wrote:
>      >> I have a slight preference for B over A. The point that [2]
>      brings up
>      >> is a good one, it seems better to allow row.“foo bar”, especially
>      when
>      >> reading CSV or JSON as they mention.
>      >>
>      >> So my preference is B>A>C>D
>      >>
>      >> /Matti Palli
>      >>
>      >>
>      >> On Wed, Apr 2, 2025 at 07:56 Arnaud Spiwack via
>      ghc-steering-committee
>      >> <[4]ghc-steering-committee at haskell.org
>      >> <mailto:[5]ghc-steering-committee at haskell.org>> wrote:
>      >>
>      >>     My preference is
>      >>     A>B>C>D
>      >>
>      >>     Though my preference between A and B is weak. Whatever's
>      easier
>      >> really.
>      >>
>      >>     On Thu, 20 Mar 2025 at 19:04, Simon Marlow via
>      >>     ghc-steering-committee <[6]ghc-steering-committee at haskell.org
>      >>     <mailto:[7]ghc-steering-committee at haskell.org>> wrote:
>      >>
>      >>         I don't feel all that strongly except that C seems like a
>      bad
>      >>         idea. A = B > D > C
>      >>
>      >>         Cheers
>      >>         Simon
>      >>
>      >>         On Wed, 19 Mar 2025 at 21:49, Adam Gundry via
>      >>         ghc-steering-committee
>      <[8]ghc-steering-committee at haskell.org
>      >>         <mailto:[9]ghc-steering-committee at haskell.org>> wrote:
>      >>
>      >>             Hi everyone,
>      >>
>      >>             This proposal [0] has been lingering for quite some
>      time,
>      >>             unfortunately.
>      >>             So we can make progress, I've tried to summarise our
>      options
>      >>             below;
>      >>             please vote for your preferred option in the next
>      week or
>      >>             two.  Once we
>      >>             have decided on our preferred course of action, I'll
>      make
>      >>             any necessary
>      >>             editorial changes to the proposal.
>      >>
>      >>             To recap, the idea is to extend OverloadedRecordDot
>      such
>      >>             that it permits
>      >>             record selection expressions such as
>      >>
>      >>                  foo.type   ->   getField @"type" foo
>      >>
>      >>             even though `type` is a keyword and hence not a valid
>      record
>      >>             field in a
>      >>             traditional datatype declarations. This is primarily
>      >>             motivated by the
>      >>             use of OverloadedRecordDot in libraries such as
>      `persistent`
>      >>             (see [1]),
>      >>             which will generate instances like this:
>      >>
>      >>                  instance HasField "type" SomeRecord SomeField1
>      where
>      >>                    getField = ...
>      >>
>      >>                  instance HasField "bar" SomeRecord SomeField2
>      where
>      >>                    getField = ...
>      >>
>      >>             Both these instances are accepted, so it is quite
>      surprising
>      >>             and
>      >>             annoying that `foo.type` is a syntax error, even
>      though
>      >>             `foo.bar` will
>      >>             be accepted (and turn into a call to `getField
>      @"bar"`).
>      >>
>      >>             As a small syntactic change, the proposal has lead to
>      quite
>      >>             some
>      >>             discussion and a few plausible alternatives:
>      >>
>      >>                A. Accept the proposal as it stands, since it is
>      the
>      >>             smallest change
>      >>             that resolves the issue.
>      >>
>      >>                B. Extend the proposal to permit still wider
>      syntax, e.g.
>      >>             `foo.Uppercase` or `foo."quoted string"`, motivated
>      by
>      >>             consistency with
>      >>             OverloadedLabels and use cases such as [2]. This
>      seems
>      >>             reasonable to me.
>      >>
>      >>                C. Extend the proposal to permit keywords such as
>      `type`
>      >>             to be used as
>      >>             field names in traditional record syntax, e.g. `data
>      Foo =
>      >>             Foo { type ::
>      >>             Int }`. In my view this is unnecessary complexity
>      that
>      >>             mistakenly
>      >>             conflates OverloadedRecordDot with traditional record
>      >>             syntax; the
>      >>             motivation for keywords as selector names comes from
>      uses of
>      >>             OverloadedRecordDot that do not involve traditional
>      record
>      >>             syntax.
>      >>
>      >>                D. Reject the proposal entirely, e.g. due to
>      worries
>      >>             about syntax
>      >>             highlighting.
>      >>
>      >>             Please reply with your preference order amongst these
>      >>             options. My vote
>      >>             is B > A > C > D.
>      >>
>      >>             Thanks,
>      >>
>      >>             Adam
>      >>
>      >>
>      >>             [0]
>      [10]https://github.com/ghc-proposals/ghc-proposals/pull/668
>      >>
>      <[11]https://github.com/ghc-proposals/ghc-proposals/pull/668>
>      >>
>      >>             [1]
>      >>
>      >>
>      [12]https://github.com/ghc-proposals/ghc-proposals/pull/668#issuecom
>      ment-2561282397
>      <[13]https://github.com/ghc-proposals/ghc-proposals/pull/668#issueco
>      mment-2561282397>
>      >>
>      >>             [2]
>      >>
>      >>
>      [14]https://github.com/ghc-proposals/ghc-proposals/pull/668#issuecom
>      ment-2564274901
>      <[15]https://github.com/ghc-proposals/ghc-proposals/pull/668#issueco
>      mment-2564274901>
>      >>
>      >>
>      >>
>      >>             On 05/11/2024 13:58, Arnaud Spiwack wrote:
>      >>              > I have no opinion on this. But I've seen two
>      points in
>      >>             the thread which
>      >>              > make sense: Vlad, our guardian of the parser, says
>      that
>      >>             it's a good
>      >>              > idea, and the comparison with OverloadedLabel
>      (made by
>      >>             Vlad and others)
>      >>              > is apt, and the symmetry is desirable. Ideally the
>      >>             comparison with
>      >>              > OverloadedLabel should be made in the Alternatives
>      >>             section, but I don't
>      >>              > feel like insisting about it :) .
>      >>              >
>      >>              > On Sat, 2 Nov 2024 at 21:21, Simon Peyton Jones
>      >>              > <[16]simon.peytonjones at gmail.com
>      >>             <mailto:[17]simon.peytonjones at gmail.com>
>      >>             <mailto:[18]simon.peytonjones at gmail.com
>      >>             <mailto:[19]simon.peytonjones at gmail.com>>> wrote:
>      >>              >
>      >>              >     I'm in support too, but I have made some
>      substantive
>      >>             suggestions on
>      >>              >     the GitHub ticket that I'd like to see
>      addressed
>      >>             before we tie a bow
>      >>              >     on this.
>      >>              >
>      >>              >     Simon
>      >>              >
>      >>              >     On Sat, 2 Nov 2024 at 09:25, Sebastian Graf
>      >>             <[20]sgraf1337 at gmail.com
>      <mailto:[21]sgraf1337 at gmail.com>
>      >>              >     <mailto:[22]sgraf1337 at gmail.com
>      >>             <mailto:[23]sgraf1337 at gmail.com>>> wrote:
>      >>              >
>      >>              >         I'm in support as well, but would like to
>      see a
>      >>             single
>      >>              >         clarifying sentence added to the proposal.
>      >>              >
>      >>
>      >>
>      [24]https://github.com/ghc-proposals/ghc-proposals/pull/668#discussi
>      on_r1826533003
>      <[25]https://github.com/ghc-proposals/ghc-proposals/pull/668#discuss
>      ion_r1826533003>
>      <[26]https://github.com/ghc-proposals/ghc-proposals/pull/668#discuss
>      ion_r1826533003
>      <[27]https://github.com/ghc-proposals/ghc-proposals/pull/668#discuss
>      ion_r1826533003>>
>      >>              >
>      >>              >         Am Sa., 2. Nov. 2024 um 07:29 Uhr schrieb
>      Erik de
>      >>             Castro Lopo
>      >>              >         <[28]erikd at mega-nerd.com
>      <mailto:[29]erikd at mega-nerd.com>
>      >>             <mailto:[30]erikd at mega-nerd.com
>      <mailto:[31]erikd at mega-nerd.com>>>:
>      >>              >
>      >>              >
>      >>              >
>      >>              >             I am in support.
>      >>              >
>      >>              >             Erik
>      >>              >
>      >>              >             Matthías Páll Gissurarson wrote:
>      >>              >
>      >>              >              > I’m in support. No need to keep
>      >>             reservations longer than
>      >>              >             necessary.
>      >>              >              >
>      >>              >              > /Matti Palli
>      >>              >              >
>      >>              >              >
>      >>              >              > On Fri, Nov 1, 2024 at 23:22 Malte
>      Ott
>      >>              >             <[32]malte.ott at maralorn.de
>      >>             <mailto:[33]malte.ott at maralorn.de>
>      <mailto:[34]malte.ott at maralorn.de
>      >>             <mailto:[35]malte.ott at maralorn.de>>> wrote:
>      >>              >              >
>      >>              >              > >
>      >>              >              > > On 2024-10-29 20:12, Adam Gundry
>      wrote:
>      >>              >              > > >
>      >>              >
>      [36]https://github.com/ghc-proposals/ghc-proposals/pull/668
>      >>
>      <[37]https://github.com/ghc-proposals/ghc-proposals/pull/668>
>      >>              >
>      >>  <[38]https://github.com/ghc-proposals/ghc-proposals/pull/668
>      >>
>      <[39]https://github.com/ghc-proposals/ghc-proposals/pull/668>>
>      >>              >              > >
>      >>              >              > > I’m in support.
>      >>              >              > >
>      >>              >              > > Best
>      >>              >              > > Malte
>      >>              >              > >
>      >>             _______________________________________________
>      >>              >              > > ghc-steering-committee mailing
>      list
>      >>              >              > >
>      [40]ghc-steering-committee at haskell.org
>      >>             <mailto:[41]ghc-steering-committee at haskell.org>
>      >>              >
>      <mailto:[42]ghc-steering-committee at haskell.org
>      >>             <mailto:[43]ghc-steering-committee at haskell.org>>
>      >>              >              > >
>      >>              >
>      >>
>      >>
>      [44]https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-c
>      ommittee
>      <[45]https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-
>      committee>
>      <[46]https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-
>      committee
>      <[47]https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-
>      committee>>
>      >>              >              > >
>      >>              >
>      >>              >
>      >>              >             --
>      >>              >
>      >>
>      --------------------------------------------------------------------
>      --
>      >>              >             Erik de Castro Lopo
>      >>              > [48]http://www.mega-nerd.com/
>      <[49]http://www.mega-nerd.com/>
>      >>             <[50]http://www.mega-nerd.com/
>      <[51]http://www.mega-nerd.com/>>
>      >>              >
>      >>  _______________________________________________
>      >>              >             ghc-steering-committee mailing list
>      >>              > [52]ghc-steering-committee at haskell.org
>      >>             <mailto:[53]ghc-steering-committee at haskell.org>
>      >>              >
>      <mailto:[54]ghc-steering-committee at haskell.org
>      >>             <mailto:[55]ghc-steering-committee at haskell.org>>
>      >>              >
>      >>
>      >>
>      [56]https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-c
>      ommittee
>      <[57]https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-
>      committee>
>      <[58]https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-
>      committee
>      <[59]https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-
>      committee>>
>      >>              >
>      >>              >
>      _______________________________________________
>      >>              >         ghc-steering-committee mailing list
>      >>              > [60]ghc-steering-committee at haskell.org
>      >>             <mailto:[61]ghc-steering-committee at haskell.org>
>      >>              >
>      <mailto:[62]ghc-steering-committee at haskell.org
>      >>             <mailto:[63]ghc-steering-committee at haskell.org>>
>      >>              >
>      >>
>      >>
>      [64]https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-c
>      ommittee
>      <[65]https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-
>      committee>
>      <[66]https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-
>      committee
>      <[67]https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-
>      committee>>
>      >>              >
>      >>              >
>      _______________________________________________
>      >>              >     ghc-steering-committee mailing list
>      >>              > [68]ghc-steering-committee at haskell.org
>      >>             <mailto:[69]ghc-steering-committee at haskell.org>
>      >>              >     <mailto:[70]ghc-steering-committee at haskell.org
>      >>             <mailto:[71]ghc-steering-committee at haskell.org>>
>      >>              >
>      >>
>      >>
>      [72]https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-c
>      ommittee
>      <[73]https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-
>      committee>
>      <[74]https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-
>      committee
>      <[75]https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-
>      committee>>
>      >>              >
>      >>              >
>      >>              >
>      >>              > --
>      >>              > Arnaud Spiwack
>      >>              > Director, Research at [76]https://moduscreate.com
>      >>             <[77]https://moduscreate.com>
>      <[78]https://moduscreate.com
>      >>             <[79]https://moduscreate.com>>
>      >>              > and [80]https://tweag.io <[81]https://tweag.io>
>      <[82]https://tweag.io
>      >>             <[83]https://tweag.io>>.
>      >>              >
>      >>              > _______________________________________________
>      >>              > ghc-steering-committee mailing list
>      >>              > [84]ghc-steering-committee at haskell.org
>      >>             <mailto:[85]ghc-steering-committee at haskell.org>
>      >>              >
>      >>
>      >>
>      [86]https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-c
>      ommittee
>      <[87]https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-
>      committee>
>      >>
>      >>             --             Adam Gundry, Haskell Consultant
>      >>             Well-Typed LLP, [88]https://www.well-typed.com/
>      >>             <[89]https://www.well-typed.com/>
>      >>
>      >>             Registered in England & Wales, OC335890
>      >>             27 Old Gloucester Street, London WC1N 3AX, England
>      >>
>      >>
>      <[90]https://www.google.com/maps/search/27+Old+Gloucester+Street,+Lo
>      ndon+WC1N+3AX,+England?entry=gmail&source=g>
>      >>
>      >>             _______________________________________________
>      >>             ghc-steering-committee mailing list
>      >>             [91]ghc-steering-committee at haskell.org
>      >>             <mailto:[92]ghc-steering-committee at haskell.org>
>      >>
>      >>
>      [93]https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-c
>      ommittee
>      <[94]https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-
>      committee>
>      >>
>      >>         _______________________________________________
>      >>         ghc-steering-committee mailing list
>      >>         [95]ghc-steering-committee at haskell.org
>      >>         <mailto:[96]ghc-steering-committee at haskell.org>
>      >>
>      >>
>      [97]https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-c
>      ommittee
>      <[98]https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-
>      committee>
>      >>
>      >>
>      >>
>      >>     --     Arnaud Spiwack
>      >>     Director, Research at [99]https://moduscreate.com
>      >>     <[100]https://moduscreate.com> and [101]https://tweag.io
>      <[102]https://tweag.io>.
>      >>     _______________________________________________
>      >>     ghc-steering-committee mailing list
>      >>     [103]ghc-steering-committee at haskell.org
>      >>     <mailto:[104]ghc-steering-committee at haskell.org>
>      >>
>      >>
>      [105]https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-
>      committee
>      <[106]https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering
>      -committee>
>      >>
>      >>
>      >> _______________________________________________
>      >> ghc-steering-committee mailing list
>      >> [107]ghc-steering-committee at haskell.org
>      >>
>      [108]https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-
>      committee
>      >
> 
>      --
>      Adam Gundry, Haskell Consultant
>      Well-Typed LLP, [109]https://www.well-typed.com/
> 
>      Registered in England & Wales, OC335890
>      27 Old Gloucester Street, London WC1N 3AX, England
> 
>      _______________________________________________
>      ghc-steering-committee mailing list
>      [110]ghc-steering-committee at haskell.org
>      [111]https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-
>      committee
> 
>      _______________________________________________
>      ghc-steering-committee mailing list
>      [112]ghc-steering-committee at haskell.org
>      [113]https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-
>      committee
> 
> References
> 
>    1. mailto:ghc-steering-committee at haskell.org
>    2. mailto:ghc-steering-committee at haskell.org
>    3. https://github.com/ghc-proposals/ghc-proposals/pull/668
>    4. mailto:ghc-steering-committee at haskell.org
>    5. mailto:ghc-steering-committee at haskell.org
>    6. mailto:ghc-steering-committee at haskell.org
>    7. mailto:ghc-steering-committee at haskell.org
>    8. mailto:ghc-steering-committee at haskell.org
>    9. mailto:ghc-steering-committee at haskell.org
>   10. https://github.com/ghc-proposals/ghc-proposals/pull/668
>   11. https://github.com/ghc-proposals/ghc-proposals/pull/668
>   12. https://github.com/ghc-proposals/ghc-proposals/pull/668#issuecomment-2561282397
>   13. https://github.com/ghc-proposals/ghc-proposals/pull/668#issuecomment-2561282397
>   14. https://github.com/ghc-proposals/ghc-proposals/pull/668#issuecomment-2564274901
>   15. https://github.com/ghc-proposals/ghc-proposals/pull/668#issuecomment-2564274901
>   16. mailto:simon.peytonjones at gmail.com
>   17. mailto:simon.peytonjones at gmail.com
>   18. mailto:simon.peytonjones at gmail.com
>   19. mailto:simon.peytonjones at gmail.com
>   20. mailto:sgraf1337 at gmail.com
>   21. mailto:sgraf1337 at gmail.com
>   22. mailto:sgraf1337 at gmail.com
>   23. mailto:sgraf1337 at gmail.com
>   24. https://github.com/ghc-proposals/ghc-proposals/pull/668#discussion_r1826533003
>   25. https://github.com/ghc-proposals/ghc-proposals/pull/668#discussion_r1826533003
>   26. https://github.com/ghc-proposals/ghc-proposals/pull/668#discussion_r1826533003
>   27. https://github.com/ghc-proposals/ghc-proposals/pull/668#discussion_r1826533003
>   28. mailto:erikd at mega-nerd.com
>   29. mailto:erikd at mega-nerd.com
>   30. mailto:erikd at mega-nerd.com
>   31. mailto:erikd at mega-nerd.com
>   32. mailto:malte.ott at maralorn.de
>   33. mailto:malte.ott at maralorn.de
>   34. mailto:malte.ott at maralorn.de
>   35. mailto:malte.ott at maralorn.de
>   36. https://github.com/ghc-proposals/ghc-proposals/pull/668
>   37. https://github.com/ghc-proposals/ghc-proposals/pull/668
>   38. https://github.com/ghc-proposals/ghc-proposals/pull/668
>   39. https://github.com/ghc-proposals/ghc-proposals/pull/668
>   40. mailto:ghc-steering-committee at haskell.org
>   41. mailto:ghc-steering-committee at haskell.org
>   42. mailto:ghc-steering-committee at haskell.org
>   43. mailto:ghc-steering-committee at haskell.org
>   44. https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee
>   45. https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee
>   46. https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee
>   47. https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee
>   48. http://www.mega-nerd.com/
>   49. http://www.mega-nerd.com/
>   50. http://www.mega-nerd.com/
>   51. http://www.mega-nerd.com/
>   52. mailto:ghc-steering-committee at haskell.org
>   53. mailto:ghc-steering-committee at haskell.org
>   54. mailto:ghc-steering-committee at haskell.org
>   55. mailto:ghc-steering-committee at haskell.org
>   56. https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee
>   57. https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee
>   58. https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee
>   59. https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee
>   60. mailto:ghc-steering-committee at haskell.org
>   61. mailto:ghc-steering-committee at haskell.org
>   62. mailto:ghc-steering-committee at haskell.org
>   63. mailto:ghc-steering-committee at haskell.org
>   64. https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee
>   65. https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee
>   66. https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee
>   67. https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee
>   68. mailto:ghc-steering-committee at haskell.org
>   69. mailto:ghc-steering-committee at haskell.org
>   70. mailto:ghc-steering-committee at haskell.org
>   71. mailto:ghc-steering-committee at haskell.org
>   72. https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee
>   73. https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee
>   74. https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee
>   75. https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee
>   76. https://moduscreate.com/
>   77. https://moduscreate.com/
>   78. https://moduscreate.com/
>   79. https://moduscreate.com/
>   80. https://tweag.io/
>   81. https://tweag.io/
>   82. https://tweag.io/
>   83. https://tweag.io/
>   84. mailto:ghc-steering-committee at haskell.org
>   85. mailto:ghc-steering-committee at haskell.org
>   86. https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee
>   87. https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee
>   88. https://www.well-typed.com/
>   89. https://www.well-typed.com/
>   90. https://www.google.com/maps/search/27+Old+Gloucester+Street,+London+WC1N+3AX,+England?entry=gmail&source=g
>   91. mailto:ghc-steering-committee at haskell.org
>   92. mailto:ghc-steering-committee at haskell.org
>   93. https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee
>   94. https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee
>   95. mailto:ghc-steering-committee at haskell.org
>   96. mailto:ghc-steering-committee at haskell.org
>   97. https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee
>   98. https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee
>   99. https://moduscreate.com/
>  100. https://moduscreate.com/
>  101. https://tweag.io/
>  102. https://tweag.io/
>  103. mailto:ghc-steering-committee at haskell.org
>  104. mailto:ghc-steering-committee at haskell.org
>  105. https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee
>  106. https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee
>  107. mailto:ghc-steering-committee at haskell.org
>  108. https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee
>  109. https://www.well-typed.com/
>  110. mailto:ghc-steering-committee at haskell.org
>  111. https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee
>  112. mailto:ghc-steering-committee at haskell.org
>  113. https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee

> _______________________________________________
> ghc-steering-committee mailing list
> ghc-steering-committee at haskell.org
> https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee



More information about the ghc-steering-committee mailing list