> But still this adds a coupling that I did not need in the SML versions. I suppose you could call it a coupling -- but comparing to the MLs, I'd prefer be forced to specify and thread my inputs and outputs (mostly hidden by monads) than to be hit by weak/imperative type variables in other cases.