Use PrimMonad instead of IO in EvalLazy