@@ -203,14 +203,10 @@ subscribeAndRead = unEvent
203203"cacheEvent/pushCheap" forall f e. pushCheap f (cacheEvent e) = cacheEvent (pushCheap f e)
204204"hold/cacheEvent" forall f e. hold f (cacheEvent e) = hold f e
205205 #-}
206−{- RULES
207− "subscribeAndRead/cacheEvent" forall e. subscribeAndRead (cacheEvent e) = subscribeAndRead e
208− #-}
209206
210207-- | Construct an 'Event' equivalent to that constructed by 'push', but with no
211208-- caching; if the computation function is very cheap, this is (much) more
212209-- efficient than 'push'
213−{- INLINE [1] pushCheap #-}
214210{-# NOINLINE pushCheap #-}
215211pushCheap :: HasSpiderTimeline x => (a -> ComputeM x (Maybe b)) -> Event x a -> Event x b
216212pushCheap f e = Event $ \sub -> do
@@ -803,7 +799,6 @@ instance HasSpiderTimeline x => Defer (SomeResetCoincidence x) (EventM x) where
803799 getDeferralQueue = asksEventEnv eventEnvResetCoincidences
804800
805801-- Note: hold cannot examine its event until after the phase is over
806−{- SPECIALIZE hold :: (HasSpiderTimeline x, Patch p) => PatchTarget p -> Event x p -> EventM x (Hold x p) #-}
807802{-# INLINE [1] hold #-}
808803hold :: (Patch p, Defer (SomeHoldInit x) m) => PatchTarget p -> Event x p -> m (Hold x p)
809804hold v0 e = do