Re: Template Haskell and haskell-src-exts

Thomas Schilling <[email protected]>
Newsgroups gmane.comp.lang.haskell.cvs.ghc
Message-ID <CAOJG3uB200fXMqPZnQuZgi_kkJp7r4T7X6mEmM0UVSBx-6XCdg@mail.gmail.com>
Wouldn't that make haskell-src-exts a boot package?  I think that would
mean that users could upgrade haskell-src-exts independently, but won't be
able to use the upgraded version and TH in the same program.  Or am I
missing something?

On 15 September 2012 09:32, Simon Peyton-Jones <[email protected]>wrote:

>  Niklas****
>
> ** **
>
> Yesterday we discussed the possibility of merging your haskell-src-exts
> and the template-haskell library, as part of your vision for a Haskell
> Suite.****
>
> * *
>
> *Motivation*.  It’s stupid, stupid to have both the *large*
> Language.Haskell.TH data types for Haskell and the *large*Language.Haskell.Exts data types for Haskell.
> ****
>
> **·        **The duplication does not serve our users well.  Sometimes
> they even need to grapple with BOTH data types in the same probram, and We
> even have a package that converts from one to the other!****
>
> **·        **The duplication does not serve use as developers well. We
> are duplicating some pretty serious effort on data type design, pretty
> printer, analysis, etc etc.****
>
>               ****
>
> *Proposal*.****
>
> **·        **We merge the two****
>
> **·        **You remain the primary maintainer****
>
> **·        **The new package (however we name it) completely replaces the
> existing template-haskell package.****
>
> All this relies on a clear sense that you, and other friends who help with
> haskell-src-exts, will continue to love, maintain, and develop it.  Of
> course, there is a virtuous cycle here: sustaining that energy will become
> easier if it was central to Template Haskell.  But I would NOT want people
> to feel “Oh, now haskell-src-exts is part of GHC, so we don’t need to
> continue to love and maintain it”.****
>
> ** **
>
> *Issues*
>
> **·        **There are a few bits in the TH data type that specifically
> support Template Haskell, including****
>
> **o   **The Name type (reconciliation needed here)****
>
> **o   **The Q monad and result types for reify (no equivalent in
> haskell-src-exts)****
>
> I think we can solve all this with some negotiation, but I guess it is
> just possible that there is some major technical obstacle.****
>
> ** **
>
> **·        **The massive question is the disruptive effect on existing TH
> users.  Changing all the data types will be a Real Pain for them.  But the
> long term benefits seem quite compelling.  We’d need to make a clear blog
> post/email etc to advertise and seek feedback.****
>
> ** **
>
> One possibility is to support BOTH for a while (deprecating the existing
> data types).  Perhaps by having two package (old and new). Initially “old”
> is deprecated but is the package you get by default.  But “new” is
> available, and the same GHC can deal with its data types.  I think this
> would be possible, with some work.****
>
> ** **
>
> **·        **Who will do the work?  (There will be quite a bit!)  I think
> you sounded willing consider taking the lead, though of course you will
> want to think more about it before making a commitment.  For my part I am
> definitely willing to discuss details, and would want to be involved in the
> design decisions, but I can’t commit to doing Serious Work.  So this only
> makes sense if, upon reflection, you and whatever friends you can persuade
> to join you, are willing to take the lion’s share of the work.  ** **
>
> ** **
>
> best wishes****
>
> ** **
>
> Simon****
>
> _______________________________________________
> Cvs-ghc mailing list
> [email protected]
> http://www.haskell.org/mailman/listinfo/cvs-ghc
>
>


-- 
Push the envelope. Watch it bend.

_______________________________________________
Cvs-ghc mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/cvs-ghc
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.