Tiny debugger, implemented with Algebraic Effects.
Inspired by stepwise for Unison language.
In this announcement post on Twitter, the author linked this 3-minute video, showing the debugger in action.
This project is a reimplementation of the idea in Scala, using Turbolift effect system.
You can run included demos using scala-cli.
Important
Turbolift requires Java 11 or newer.
- OriginalDemo - The original demo from stepwise, shown in the video. Translated to Scala.
scala-cli https://raw.githubusercontent.com/marcinzh/daae/master/modules/demos/src/main/scala/demos/OriginalDemo.scala - TreeWalk - Using multiple effects. Demonstrates that when
Debuggoes back in time, local state (e.g.Reader,State,Writer) gets restored as well.
scala-cli https://raw.githubusercontent.com/marcinzh/daae/master/modules/demos/src/main/scala/demos/TreeWalk.scala