Five choices shape the language
- Determinism is language identity. Evaluation order, rendering, diagnostics, and declared resource outcomes are part of the contract rather than accidental properties of one machine.
- Unsupported behavior fails loudly. The evaluator does not search host globals or borrow a platform library when a feature is missing.
- Data and effects stay separate. A rule returns a value. Files, network, time, randomness, and external actions belong to an explicit caller.
- Representations do not mint authority. Source, an exact image, a bundle, a receipt, and a report each answer different questions; none promotes itself into permission.
- Evidence names its denominator. A checked corpus or backend comparison supports only the runners, inputs, observations, and limits it records.
The trade-offs are intentional
| Lispex chooses | You gain | You give up |
|---|---|---|
| one pinned semantic profile | repeatable results and reviewable failures | unspecified host behavior |
| a compact value and procedure set | a language that can be mapped and tested | broad Scheme compatibility |
| explicit host boundaries | rules that remain portable and auditable | convenient implicit I/O and globals |
| exact source identity | byte-for-byte review and transport | automatic whitespace or encoding normalization |
| bounded receipts and Vouch evidence | inspectable claims with clear failure points | a universal proof or transferable authorization |
A practical reading rule
When a feature sounds powerful, ask two questions: “Which exact bytes and runner does it describe?” and “What still belongs to the calling application?” Those questions explain why an image can prove exact recovery without proving provenance, and why a Vouch gate can report one local matching decision without authorizing a payment or deployment.
Current boundary
Lispex is Lisp-shaped, but it is not an attempt to accept every Scheme program. Scope cuts are compatibility decisions. A future backend implements the profile; it does not redefine the language by accident.
Keep going
Use Current Scope for the exact included surface, or Roadmap for directions that remain subordinate to these choices.