Routes belong to peers, but should the route record really hold a peer record value?
Not withstanding the implications it has for updating GC use counts for peers....
Ditto global in peer - why should this not be explicit?
consider doing this by making a 'Global' Monad with or even stacked monads for both Global and Peer.
Latter would formalise separation of Peer processes nicely....
Routes belong to peers, but should the route record really hold a peer record value? Not withstanding the implications it has for updating GC use counts for peers.... Ditto global in peer - why should this not be explicit?