Re: dependingOn in 6.6

2006-08-11 Thread Adrian Hey
John Meacham wrote: data Dummy1 = Dummy1 intVar1 :: IORef Int intVar1 = unsafePerformIO (newIORef 0 `dependingOn` Dummy1) data Dummy2 = Dummy2 intVar2 :: IORef Int intVar2 = unsafePerformIO (newIORef 0 `dependingOn` Dummy2) normally, you would have to compile with -fno-cse to keep these two

Re: dependingOn in 6.6

2006-08-09 Thread Simon Marlow
John Meacham wrote: I was wondering if we could be sure to get dependingOn :: a - b - a dependingOn = in ghc 6.6? this has been discussed before, it is implemented in jhc and I have found all sorts of use for it as it can be used to control let floating and inlining in a nice general way

Re: dependingOn in 6.6

2006-08-09 Thread John Meacham
On Wed, Aug 09, 2006 at 08:40:06AM +0100, Simon Peyton-Jones wrote: What's the implementation you have in mind? It's sure to get in the way of some optimisations; e.g. ((\x.e) `dependingOn` y) arg Maybe that doesn’t matter. I'm reluctant to build in optimisation rules for

dependingOn in 6.6

2006-08-08 Thread John Meacham
I was wondering if we could be sure to get dependingOn :: a - b - a dependingOn = in ghc 6.6? this has been discussed before, it is implemented in jhc and I have found all sorts of use for it as it can be used to control let floating and inlining in a nice general way and is trivial