Martin Odersky is planning to add polymorphic side effect types to Scala.
Lucas Rytz' PhD research describes an early incarnation. The syntax will be different: side effects will be modeled as implicit evidence. But the semantis will be largely the same I believe.
I seem to remember that the default will be that if no side effects are declared that any side effect is assumed. At least that was the idea in Rytz' PhD thesis. The reason for this was pragmatics: the only effect system in a main stream language is Javas checked exceptions. And for that the communis opinio ended up being that the idea is right but having to declare exceptions in intermediary layers of the call graph was not worth the effort.
That's why f.i. Anders Hjelberg left checked exceptions out off C#.
So getting the usability right is extremely important for a widely adopted effect system.
Btw there are a lot of publications around 2012 on the topic of effect systems.