RE: [Haskell-cafe] ACIO versus Execution Contexts

| I think it would be nice to summarise the current state of play. This really | needs to be a WiKi. Thanks for the summary, George. | 2. Which if either of the proposals would the gods responsible for implementing | Haskell compilers favour? Rather than remain completely silent on this topic let me say that (a) I'm totally snowed under at the moment, at least partly with GHC stuff (Template Haskell, GADTs etc); (b) there has been so much traffic on this global variable topic that I've stopped reading it carefully. This isn't because I think it's unimportant or boring, but rather because I'm hoping that someone will eventually emit a summary that really does boil out the main issues, so that everyone else can benefit from the fruits of your (plural) labours. The idea would be that everyone else can just read the summary without reading the thread. A Wiki would be good. (c) I have the impression that there's still quite a bit of active discussion; convergence is not achieved (d) I'm not averse to changing GHC in some way, but big changes (e.g top level <-) would need a jolly persuasive argument and solid consensus. Smaller changes (e.g. a robust promise about top-level newMVars) are easier of course. (e) FWIW, as Simon has remarked, we're busy eliminating top-level global MVars from GHC. The really persuasive use I know for them is to implement semantically-pure but implementationally impure things like memo tables. Simon

On Tuesday 30 Nov 2004 4:01 pm, Simon Peyton-Jones wrote:
(d) I'm not averse to changing GHC in some way, but big changes (e.g top level <-) would need a jolly persuasive argument and solid consensus. Smaller changes (e.g. a robust promise about top-level newMVars) are easier of course.
(e) FWIW, as Simon has remarked, we're busy eliminating top-level global MVars from GHC. The really persuasive use I know for them is to implement semantically-pure but implementationally impure things like memo tables.
Sorry, but aren't these views somewhat contradictory? Either top level TWIs are needed or they're not. You're indicating that you think they are needed sometimes (at least top level MVars are) and I do agree. But if so, it seems sensible to me to try produce a proper framework for supporting general top-level TWIs properly (and efficiently). But if top level MVars are all that's on offer I'd settle for that :-) I can still implement my "oneShot" examples just by passing the top level MVar as an argument to oneShot rather than having it create its own. So yes please, I'd like this. Thanks -- Adrian Hey
participants (2)
-
Adrian Hey
-
Simon Peyton-Jones