A reference implementation of the Sharo Core Language (SHC)
Ash is an executable semantics and runtime for the Sharo Core workflow language, designed for governed AI systems with formal verification capabilities.
Ash provides:
- Parser: Surface language → IR
- Type Checker: Effect tracking and obligation verification
- Interpreter: Big-step operational semantics
- Provenance Tracker: Complete audit trails
- Policy Engine: Deontic logic evaluation
ash/
├── crates/
│ ├── ash-core/ # IR and semantics definitions
│ ├── ash-parser/ # Surface language parser
│ ├── ash-typeck/ # Type checker and effect analysis
│ ├── ash-interp/ # Interpreter and runtime
│ ├── ash-provenance/ # Audit trail and provenance
│ └── ash-cli/ # Command-line interface
├── examples/ # Target Ash examples
├── tests/ # Test suite
└── docs/ # Documentation
# Build
cargo build --release
# Check a target Ash example
ash check examples/10-testing-helpers/testing_helpers.ash
# Check process/channel helper examples
ash check examples/11-process-channel-helpers/process_channel_helpers.ash
# Run the example corpus gate
cargo test -p ash-cli --test example_corpus_check -- --nocaptureCurrent examples are listed in examples/README.md. Phase 201 removed older workflow-era examples from productive repository paths; new examples must use target Ash only.
Target Ash entries use ordinary fn main definitions:
fn main() -> Bool {
do {
return true;
}
}fn support_ticket_ready(confidence: Int) -> Bool {
confidence > 80
}
fn main() -> Bool {
do {
let ready = support_ticket_ready(95);
return ready;
}
}🚧 Work in progress - implementing core semantics from Sharo Core Language specification.
MIT OR Apache-2.0