Re: [GHC] #11526: unsafeLookupStaticPtr should not live in IO

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Re: [GHC] #11526: unsafeLookupStaticPtr should not live in IO

Mathieu Boespflug

IMHO this dynamic linking thing is a red herring. In principle any function call becomes potentially impure given eg the ability to shadow symbols. In practice that's not something we do to programs. We could consider having two tables though: an initial tackle generated at compile time that will never change, and an aux table populated as new objects get linked in. Then programs can "opt in" to taking into account new objects loaded dynamically by reading (in IO) the aux table.

Sent from my mobile.

I'll have a look at the new material on the wiki shortly. It would be nice to close out the basic distributed story.


_______________________________________________
ghc-devs mailing list
[hidden email]
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs
Reply | Threaded
Open this post in threaded view
|

RE: [GHC] #11526: unsafeLookupStaticPtr should not live in IO

Simon Peyton Jones

Fine.  So long as the result of deserialising doesn’t change with time!   It’s not clear what the “opt-in” mechanism would look like, but maybe you or Facundo can articulate a design?

 

S

 

From: Mathieu Boespflug [mailto:[hidden email]]
Sent: 02 February 2016 14:38
To: [hidden email]; Simon Peyton Jones <[hidden email]>; Edsko de Vries <[hidden email]>; Facundo Domínguez <[hidden email]>
Subject: Re: [GHC] #11526: unsafeLookupStaticPtr should not live in IO

 

IMHO this dynamic linking thing is a red herring. In principle any function call becomes potentially impure given eg the ability to shadow symbols. In practice that's not something we do to programs. We could consider having two tables though: an initial tackle generated at compile time that will never change, and an aux table populated as new objects get linked in. Then programs can "opt in" to taking into account new objects loaded dynamically by reading (in IO) the aux table.

Sent from my mobile.

I'll have a look at the new material on the wiki shortly. It would be nice to close out the basic distributed story.


_______________________________________________
ghc-devs mailing list
[hidden email]
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs