On the question of Static pointers, the state of play (as I understand it) is this:
- My blog post
https://ghc.haskell.org/trac/ghc/blog/simonpj/StaticPointers
represents, I believe, a consensus.
- In that blog post, Plan A requires some support from Typable/TypeRep.
A new wiki page
https://ghc.haskell.org/trac/ghc/wiki/Typeable describes
a design to do exactly that. This will be new to most of you; take
a look.
- The StaticPointers wiki page
https://ghc.haskell.org/trac/ghc/wiki/StaticPointers
is out of date; Matthieu and Facundo are planning to update it
None of this amounts to a full Plan; but it does represent progress. I think Matthieu and Facundo are the main driving forces. I'm hoping that you (perhaps with help from others) will
- work through the proposed design a bit more,
to check that it does what you need;
- develop a plan for how we can more from where we are
to the new glorious story with minimum disruption
- develop an implementation
I've posted a copy of this on the ticket
https://ghc.haskell.org/trac/ghc/ticket/7015#comment:35
Thanks
Simon
| -----Original Message-----
| From:
parallel...@googlegroups.com [mailto:
parallel-
|
has...@googlegroups.com] On Behalf Of Boespflug, Mathieu
| Sent: 06 October 2014 01:35
| To: Peter Braam
| Cc: Carter Schonwald; parallel-haskell
| Subject: Re: Static values language extension proposal
|
| Hi Peter,
|
| following feedback from Simon PJ and others, the patch as originally
| written is going to be revised. Pending this, Facundo has closed the
| review request for the original patch, found here:
|
|
https://phabricator.haskell.org/D119#5150
|
| Here is a wiki page (that we are in the middle of updating), and a
| blog post:
|
|
https://ghc.haskell.org/trac/ghc/wiki/StaticPointers
|
https://ghc.haskell.org/trac/ghc/blog/simonpj/StaticPointers
|
| Segfaults can be caused by untrusted parties on the network that forge
| type tags in messages. We will likely protect against this by default,
| but it may come at a performance cost, which for some use cases people
| will want to turn off. This issue hinges on whether you have a trusted
| network. Quite apart from this, there is an issue with maintaining
| appropriate GC roots, but that is comparatively easy to fix (and
| involve static'ed CAF's, which most use cases do not involve). Not
| sure whether "busted" is the right word.
|
| Best,
|
| Mathieu
| --
| Mathieu Boespflug
| Founder at
http://tweag.io.