Repository navigation
Sprig v0.3.0-alpha.1
Pre-releaseSprig v0.3.0-alpha.1 — tools, JVM libraries and contributions
Compiler 0.3.0-alpha.1, language 0.8-dev, JDK 17+, Apache-2.0.
Experimental Alpha: for trying small tools and contributing, not production migration.
This candidate's exact publication and platform evidence lives in the
release validation record.
What you can build
Sprig is a small, explicit JVM language for tools, automation and reliable
application code with human–AI collaboration. The compiler's capabilities,
help, API metadata, doctor and structured errors guide a query/check/repair loop.
- Apache Maven Resolver supplies effective POMs, parents/BOMs and transitive
compile/runtime JARs. Manifest exact versions, SHA-256 locks and offline reuse
feed one classpath for check/build/run/api/doctor. No Maven CLI/plugins. - Relocatable Unix and Windows
sprig.cmdlaunchers require a JDK, no Bash/WSL
for preview Windows SDK usage. Linux/macOS × JDK17/26 are supported release
gates; Windows remains experimental and non-blocking. - Explicit reserved
@std/module.sprimports work outside the checkout and
lock the bundled std version/digest.build --emit-java-onlyexposes checked
generated Java without javac. - Ordinary Sprig
stdmodules supply UTF-8 IO/path, arguments/environment,
text/time and a recursive closed JSON variant with exact numeric text. - Three real projects ship: repository auditor, Maven-backed HTML utility,
subset source/AST analyzer. All use the normal compiler/JVM pipeline. - Contributor workflow: one verify command, scoped public issue contracts,
PR/issue templates and welcomed, accountable AI assistance.
Try it
Extract sprig-v0.3.0-alpha.1-jdk.zip after checking its .sha256, add bin
to PATH, and install JDK17+ (the SDK does not bundle Java):
sprig version
sprig init my-tool
cd my-tool
sprig resolve
sprig run
On Windows use bin\sprig.cmd; on Unix bin/sprig. See
showcases, standard layer and
dependency contract. Initial Maven resolve requires network;
subsequent run --offline uses the hash-verified locked cache.
Compatibility and limits
Lock schema 3 supersedes schema 2: run resolve explicitly; no silent migration.
Existing language syntax/numeric/nullability/generic semantics are preserved.
Compiler implementation libraries are isolated from application imports.
No publishing/registry/authentication, Maven plugins, non-JAR runtime artifacts,
LSP/IDE, inference/variance, interfaces/traits, new pattern syntax or new backend.
Java generic/array/varargs interop remains limited. The analyzer is a subset probe,
not a self-hosted compiler. Types do not prove numerical stability. See
known limitations. Libraries retain their Java contracts.