Interactive REPL infrastructure for Sigil.
- Scheme 100%
|
David Wilson
ff37acb3b8
Some checks failed
ci/woodpecker/push/woodpecker Pipeline failed
|
||
|---|---|---|
| src/sigil | Extract sigil-repl from sigil monorepo | |
| .gitignore | Extract sigil-repl from sigil monorepo | |
| .woodpecker.yml | Bump CI pin to sigil v0.14.3 | |
| dev-redirects.sgl | Extract sigil-repl from sigil monorepo | |
| manifest.scm | Extract sigil-repl from sigil monorepo | |
| package.sgl | Bump sigil-repl to 0.17.0 | |
| README.md | Extract sigil-repl from sigil monorepo | |
| sigil.lock | Relock off retired sigil-lang; build against sigil 0.17.1 | |
sigil-repl
Interactive REPL infrastructure for Sigil. Provides prompt rendering, multi-line input handling, debug-mode stack inspection, and a shared command registry so applications can embed a Sigil REPL with their own commands.
The sigil repl CLI command itself lives in sigil-cli at
(sigil cli repl); this package exposes only the embeddable library
surface. sigil-nrepl reuses these primitives for the network REPL.
Modules
| Module | Purpose |
|---|---|
(sigil repl) |
REPL entry point, prompt rendering, debug-mode formatting, command parsing |
(sigil repl commands) |
Shared command registry plus the built-in REPL commands (,help, ,q, etc.) |
Embedding a REPL
(import (sigil repl))
(run-repl) ; starts the interactive loop on stdin/stdout
To register custom commands:
(import (sigil repl commands))
(register-repl-command!
name: ",time"
description: "Print elapsed time for an expression."
handler: (lambda (args) ...))
Build and test
sigil deps install
sigil build
sigil test --report
Local development against an unreleased sigil monorepo:
sigil deps install --redirects ./dev-redirects.sgl
sigil build --redirects ./dev-redirects.sgl
License
BSD-3-Clause. See LICENSE in the sigil monorepo for the canonical copy.