Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Interruptible evals

Open
#41 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
25/100
Issue type
Feature
Clarity
Needs clarification
Activity status
Stale
Tech stack
clojure, javascript

Research direction

Start by reading the existing piggieback support copied into the dirac nREPL middleware, then trace the weasel protocol and Chrome debugger protocol evaluation paths. Determine how an interruption request would travel through these layers and how in-flight evaluations should be handled. Done means the full-stack interruption behavior is implemented and tested, including the stated leakage concern.

Written by the indexing model from the issue text.

Description

enhancement help wanted

nREPL has support for interruptible evaluations (e.g interrupting long running Clojure code snippet). I have copy&pasted supporting code from piggieback to dirac nREPL middleware, but never tested it. It won't work for in-flight weasel evaluations anyways, it will leak them I guess. Javascript does not have a good way how to interrupt long-running code.

Because we are using Chrome's debugger protocol for evaluations in dirac, we can interrupt in-flight code executions. This would require an extension of weasel protocol for interruption requests.

I don't want to spend time on it but if anyone would feel that this is important feature to add I'm open for an addition. This task is considered very hard because you would have to understand full stack.

Dominant language
Clojure
Stars
775
Forks
29
PR merge metrics
No merged PRs in 30d

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from binaryage/dirac

All issues in binaryage/dirac

Similar issues

More Clojure issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.