Directories
¶
| Path | Synopsis |
|---|---|
|
cmd
|
|
|
wile
command
Package main provides the entry point for the Wile Scheme interpreter binary.
|
Package main provides the entry point for the Wile Scheme interpreter binary. |
|
Package coverage collects per-s-expression coverage data from executing Wile Scheme code.
|
Package coverage collects per-s-expression coverage data from executing Wile Scheme code. |
|
examples
|
|
|
embedding
command
basic demonstrates embedding the Wile Scheme interpreter in a Go program.
|
basic demonstrates embedding the Wile Scheme interpreter in a Go program. |
|
embedding/source-tracking
command
source-tracking demonstrates the ParseWithSource/MustParseWithSource API for embedding Wile with per-operation source location tracking.
|
source-tracking demonstrates the ParseWithSource/MustParseWithSource API for embedding Wile with per-operation source location tracking. |
|
embedding/stack-trace
command
stack-trace demonstrates the VM stack trace captured when a runtime error escapes to the embedder, with emphasis on the sub-context spanning added in CaptureStackTrace (the "<foreign-call boundary>" frame).
|
stack-trace demonstrates the VM stack trace captured when a runtime error escapes to the embedder, with emphasis on the sub-context spanning added in CaptureStackTrace (the "<foreign-call boundary>" frame). |
|
extensions
|
|
|
algebra/graph
Package graph provides Go-side fast paths for graph algorithms used by the (wile algebra graph) Scheme library.
|
Package graph provides Go-side fast paths for graph algorithms used by the (wile algebra graph) Scheme library. |
|
algebragraph
Package algebragraph exposes the Go-side graph kernels in extensions/algebra/graph as Scheme primitives.
|
Package algebragraph exposes the Go-side graph kernels in extensions/algebra/graph as Scheme primitives. |
|
charsets
Package charsets implements the SRFI-14 Character-Set Library FFI surface.
|
Package charsets implements the SRFI-14 Character-Set Library FFI surface. |
|
eval
Package eval provides evaluation and environment primitives.
|
Package eval provides evaluation and environment primitives. |
|
files
Package files provides file I/O primitives.
|
Package files provides file I/O primitives. |
|
gointerop
Package gointerop provides Go concurrency primitive wrappers.
|
Package gointerop provides Go concurrency primitive wrappers. |
|
introspection
Package introspection provides read-only environment introspection primitives.
|
Package introspection provides read-only environment introspection primitives. |
|
math
Package math provides transcendental and advanced mathematical primitives.
|
Package math provides transcendental and advanced mathematical primitives. |
|
process
Package process provides subprocess execution primitives.
|
Package process provides subprocess execution primitives. |
|
sat
Package sat ships a CDCL SAT solver as a Wile extension.
|
Package sat ships a CDCL SAT solver as a Wile extension. |
|
system
Package system provides system interface primitives.
|
Package system provides system interface primitives. |
|
threads
Package threads provides SRFI-18 multithreading primitives.
|
Package threads provides SRFI-18 multithreading primitives. |
|
pkg
|
|
|
debug
Package debug is the embedder-facing debugger: breakpoints, stepping, and the break-prompt command surface a REPL renders.
|
Package debug is the embedder-facing debugger: breakpoints, stepping, and the break-prompt command surface a REPL renders. |
|
docparse
Package docparse parses structured metadata from Guile-style docstrings.
|
Package docparse parses structured metadata from Guile-style docstrings. |
|
environment
Package environment provides variable binding and scoping for the Scheme compiler.
|
Package environment provides variable binding and scoping for the Scheme compiler. |
|
extensions/io
Package io provides I/O primitives for reading and writing.
|
Package io provides I/O primitives for reading and writing. |
|
internal/bootstrap
Package bootstrap initializes the top-level Scheme environment.
|
Package bootstrap initializes the top-level Scheme environment. |
|
internal/extensions/all
Package all provides additional primitives for records, promises, and extended string/character operations.
|
Package all provides additional primitives for records, promises, and extended string/character operations. |
|
internal/extensions/envvars
Package envvars provides environment variable access primitives.
|
Package envvars provides environment variable access primitives. |
|
internal/extensions/iotest
Package iotest provides fault-injecting I/O ports for testing the classification of read errors per R7RS §6.11.
|
Package iotest provides fault-injecting I/O ports for testing the classification of read errors per R7RS §6.11. |
|
internal/extensions/namespace
Package namespace provides namespace manipulation primitives.
|
Package namespace provides namespace manipulation primitives. |
|
internal/forms
Package forms provides a shared registry for special form validators.
|
Package forms provides a shared registry for special form validators. |
|
internal/match
Package match implements the pattern matching engine for syntax-rules and syntax-case.
|
Package match implements the pattern matching engine for syntax-rules and syntax-case. |
|
internal/tokenizer
Package tokenizer implements R7RS Scheme lexical analysis.
|
Package tokenizer implements R7RS Scheme lexical analysis. |
|
internal/validate
Package validate validates Scheme syntax and produces typed expressions.
|
Package validate validates Scheme syntax and produces typed expressions. |
|
machine
Package machine implements the Scheme virtual machine, compiler, and macro expander.
|
Package machine implements the Scheme virtual machine, compiler, and macro expander. |
|
machine/compilation/resolver
Package resolver provides file resolution infrastructure for the Scheme compiler.
|
Package resolver provides file resolution infrastructure for the Scheme compiler. |
|
machine/compilation/sourceload
Package sourceload provides file-finding and load-stack tracking for locating source files across virtual filesystems.
|
Package sourceload provides file-finding and load-stack tracking for locating source files across virtual filesystems. |
|
parser
Package parser implements R7RS Scheme syntax parsing.
|
Package parser implements R7RS Scheme syntax parsing. |
|
registry
Package registry provides a plugin architecture for registering Scheme primitives.
|
Package registry provides a plugin architecture for registering Scheme primitives. |
|
registry/core
Package core provides the essential primitives required for Scheme to function.
|
Package core provides the essential primitives required for Scheme to function. |
|
registry/helpers
Package helpers provides shared utility functions for primitive implementations.
|
Package helpers provides shared utility functions for primitive implementations. |
|
registry/testhelpers
Package testhelpers provides shared test infrastructure for Scheme primitive tests.
|
Package testhelpers provides shared test infrastructure for Scheme primitive tests. |
|
repl
Package repl provides composable components for building interactive Scheme REPLs on top of the Wile engine.
|
Package repl provides composable components for building interactive Scheme REPLs on top of the Wile engine. |
|
schemeutil
Package schemeutil provides conversion utilities between syntax, datum, and Go types.
|
Package schemeutil provides conversion utilities between syntax, datum, and Go types. |
|
security
Package security provides fine-grained authorization for Scheme runtime operations.
|
Package security provides fine-grained authorization for Scheme runtime operations. |
|
stdlib
Package stdlib provides the embedded R7RS standard library files.
|
Package stdlib provides the embedded R7RS standard library files. |
|
syntax
Package syntax implements Scheme syntax representation with hygiene support.
|
Package syntax implements Scheme syntax representation with hygiene support. |
|
syntax/syntaxtest
Package syntaxtest provides test helpers for the syntax package.
|
Package syntaxtest provides test helpers for the syntax package. |
|
values
Package values implements all Scheme runtime value types.
|
Package values implements all Scheme runtime value types. |
|
values/valuestest
Package valuestest provides test helpers for the values package.
|
Package valuestest provides test helpers for the values package. |
|
wile
Package wile provides the public API for embedding the Wile Scheme interpreter.
|
Package wile provides the public API for embedding the Wile Scheme interpreter. |
|
tools
|
|
|
cmd/cxmeasure
command
Command cxmeasure reports cyclomatic and cognitive complexity per function, file, and package, so that refactoring is aimed at measured density rather than at whichever file someone happened to be reading.
|
Command cxmeasure reports cyclomatic and cognitive complexity per function, file, and package, so that refactoring is aimed at measured density rather than at whichever file someone happened to be reading. |
|
cmd/nestinglint
command
Command nestinglint enforces the project's shallow-nesting rule (CODING_STYLE.md: "Keep Indentation Shallow" / "avoids 'arrow code,' where indentation grows with each condition checked").
|
Command nestinglint enforces the project's shallow-nesting rule (CODING_STYLE.md: "Keep Indentation Shallow" / "avoids 'arrow code,' where indentation grows with each condition checked"). |
|
cmd/singlelinefunclint
command
Command singlelinefunclint enforces the project's no-single-line-function rule (CODING_STYLE.md: "Never write single-line functions.
|
Command singlelinefunclint enforces the project's no-single-line-function rule (CODING_STYLE.md: "Never write single-line functions. |
|
cmd/typeswitchlint
command
Command typeswitchlint checks that type switches over values.Value are exhaustive — but only the ones that opt in with an //exhaustive marker.
|
Command typeswitchlint checks that type switches over values.Value are exhaustive — but only the ones that opt in with an //exhaustive marker. |
|
ruleguard
Package gorules defines custom lint rules for the Wile project.
|
Package gorules defines custom lint rules for the Wile project. |
Click to show internal directories.
Click to hide internal directories.