> The first question I have is it is possible to implement this guy > without wrapping the value in a constructor? No. > The second question I have is: is there any hope of getting > something like this into the standard library? It's there already. It's called "Identity monad".