Skip to content

marcinzh/daae

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Maven Central

Debug as an Effect (DaaE)

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.

image


You can run included demos using scala-cli. Turbolift requires ⚠️Java 11⚠️ or newer.

  1. 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  
  1. TreeWalk - Using multiple effects. Demonstrates that when Debug goes 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

Releases

No releases published

Packages

No packages published

Languages