Unify STRef and IORef in plain Haskell 98