\n\nMaybe it's possible to make `ReactiveSequence` generic for both way like this.",[3241],{"name":3172,"color":3173},454,"[hmr] Advanced generic typing","2025-09-25T10:43:48Z","https://github.com/promplate/pyth-on-line/issues/454",0.7864738,{"description":3248,"labels":3249,"number":3251,"owner":3175,"repository":3176,"state":3177,"title":3252,"updated_at":3253,"url":3254,"score":3255},"For a standard reaction model:\n\n```\n########## ----> ########### ----> ##########\n# Signal # # Derived # # Effect #\n########## \u003C - - ########### \u003C - - ##########\n```\n\n\nA `Derived` referenced only by `Signal`s is unreachable and should be GC’d, yet we can’t make every `Signal → Derived` reference weak or the `Derived` may vanish too soon.\n\nSolution: give `Derived` an `unsubscribe` method that disposes it once no `BaseComputation` holds it.\n\n> Edit: or in a `BaseComputation.__del__`\n\nWe may also need to remind users not to treat `Derived` as a lazy `Effect`. But wait, then what can they use if they just need a lazy `Effect`? So we may implement a `weak=False` attribute in `Derived` and `AsyncDerived` to allow user control the lifespan of a `Derived` (just like we provide `force_flush=True` for `Batch`s).",[3250],{"name":3221,"color":3222},453,"[hmr] `WeakDerived` or something similar","2025-09-25T06:49:07Z","https://github.com/promplate/pyth-on-line/issues/453",0.7973206,{"description":3257,"labels":3258,"number":3259,"owner":3175,"repository":3176,"state":3177,"title":3260,"updated_at":3261,"url":3262,"score":3263},"Related: b38afd8fd9095d6814218ac11ae4275316e3b741",[],348,"[hmr] Need tests for `cache_across_reloads` gc behaviors","2025-07-20T11:39:27Z","https://github.com/promplate/pyth-on-line/issues/348",0.80421114,["Reactive",3265],{},["Set"],["ShallowReactive",3268],{"$fTRc1wZytZ_XrK4EfJfei_Sz-An4H4Yy6syhVxH_PVJc":-1,"$fEOogd3hluMOLRLFTFECPpzkSLNIDK2CkzrcVnC5J_hk":-1},"/promplate/pyth-on-line/304"]