Visual tool to spot odd runtime behaviour of Haskell programs.
Visual tool to spot odd runtime behaviour of Haskell programs.
Keywords: data scientist, GHC eventlog, UI experiments, creative/live coding
NOTE: GHC-WPC is optional, Haskell Code Spot works with vanilla GHC eventlog out of the box.
In one terminal:
$ (cd server && stack build && stack exec code-spot-server)
In another terminal:
$ (cd client/src && npm install && npm run dev)
Now open http://localhost:5000/ in your browser!
You will see a visualisation of data/grin.eventlog (change in client/src/App.svelte).
If stack project is used, profiling must be enabled. After compiled with profiling, one need to run it with RTS options plh.
stack build --profile --executable-profiling --library-profiling
stack exec --profile EXECUTABLE -- ARGUMENTS +RTS -p -l -h
This project is still in the proof-of-concept phase, but we had a great fun implementing the initial version of heap inspections and the step-by-step debugger. All of these features are based on visualizing the EventLog from GHC.
Heap Live
Heap Size
Cost Center based stack trace in step-by-step style. See the demo video.