google-research / google-research/dex-lang
Report stack traces for runtime errors
- Dominant language
- Haskell
- Stars
- 1.7k
- Forks
- 117
- PR merge metrics
- No merged PRs in 30d
Description
We added runtime errors in 7cdc861b7 but they just report `runtime error` without any provenance information. There's no true call stack because we inline all functions at compile time, but we should be able to record a virtual call stack as we do the inlining and attach it to the `ThrowError` op.
Contributor guide
Research direction
Start by reviewing commit 7cdc861b7, then trace the compiler's function inlining logic and the ThrowError operation. Determine how provenance can be retained as functions are inlined and how runtime errors currently report their message; done means runtime errors expose the resulting virtual call stack.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- haskell
- Domain
- compilers
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100