Yesterday, we released a new version of EProvide.
(EProvide is an Eclipse EMF-based tool with which you can describe the operational semantics of your DSL using different description languages. The idea behind EProvide is to metamodel not only the static structure of your DSL but also the runtime states. Thus, the runtime state of a DSL program is encoded in a model that changes step-wise over time. With EProvide, these step-wise changes are described with a model transformation that transforms one runtime state to its successor. Based on such a description and on an editor for your DSL, EProvide can execute your models in an animated way so that you can observe and debug model execution.)
The new version is much better integrated into the Eclipse debug framework than its predecessor: you can use Eclipse's standard GUI elements for controlling model execution (suspend, resume, step, drop to frame = reset initial state, terminate). Also, we added a new step-back button to the debug view that allows you to step back in the execution history of your model execution.
You can see the new features demonstrated in this screencast.