Skip to content

Commit 2633bd4

Browse files
committed
Elevate KitchenSpeak toward standalone repo; commence proofs-first work
Prepare KitchenSpeak's elevation from an in-tree directory to its own canonical repository (matching every sibling language), list it as a DSL in the monorepo README/EXPLAINME, and commence the roadmap to bring it to AffineScript-level toolchain parity — leading with proofs. Standalone-repo scaffolding under kitchenspeak/: - README.adoc (standalone), LICENSE (Palimpsest/MPL-2.0), .gitignore, CHANGELOG.adoc - ROADMAP.adoc: proofs-first plan to AffineScript parity, with a per-axis parity scorecard - decisions/0002: ADR recording the elevation Proofs commenced (Phase 1): - proofs/agda/PoachedEgg.agda: lowers examples/poached-egg.ks; discharges termination, on_fail totality, echo-witness extraction, and the first Tropical refinement (no-binary-overheat envelope). Linear + Tropical + Echo - proofs/Makefile + proofs/agda/kitchenspeak.agda-lib: proof build harness (make -C proofs) Monorepo: - README.adoc, EXPLAINME.adoc: KitchenSpeak listed as an experimental DSL - scripts/elevate-kitchenspeak.sh: runnable final elevation step (create repo + git subtree split + convert to submodule). Split out because repo creation needs permissions/network this session lacked.
1 parent ad78f27 commit 2633bd4

13 files changed

Lines changed: 1409 additions & 52 deletions

EXPLAINME.adoc

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,8 +86,21 @@ Ephapax (which is dyadic: affine + linear).
8686
| `let x = ...` (affine) vs `let! x = ...` (linear). Targets WebAssembly.
8787
Gossamer backend. Rust compiler, Coq proofs.
8888
| Rust (17 crates), Coq proofs
89+
90+
| *KitchenSpeak* _(experimental DSL)_
91+
| Applied type-theory teaching DSL
92+
| Seven-type kitchen-orchestration DSL: Tropical (refinement), Linear,
93+
Choreographic (session), Echo (postulated oracle), Dyadic (tensor),
94+
Ceremonial (effect), Primitive (units). `max_duration` / `on_fail` /
95+
`proving @w` make every block a total, witnessed function. Proofs-first.
96+
| Agda proofs (OCaml front end planned)
8997
|===
9098

99+
NOTE: *KitchenSpeak* is an experimental teaching DSL, not one of the ten
100+
core languages. It is maintained as the standalone `hyperpolymath/kitchenspeak`
101+
repository and develops proofs-first (see its `ROADMAP.adoc`); the canonical
102+
recipes (Dough, Poached Egg) already have Agda lowerings.
103+
91104
=== Most mature: Ephapax
92105

93106
`ephapax/` is the most advanced implementation. It is a Cargo workspace with
@@ -273,6 +286,12 @@ from Julia the data language to avoid confusion.
273286
| `error-lang/`
274287
| Pedagogical language for teaching systems thinking via error conditions.
275288

289+
| `kitchenspeak/`
290+
| Experimental, formally-verified kitchen-orchestration DSL (submodule:
291+
`hyperpolymath/kitchenspeak`). Seven-type system; proofs-first. Agda
292+
lowerings of the Dough and Poached Egg recipes; `ROADMAP.adoc` targets
293+
AffineScript-level toolchain parity, leading with the proof library.
294+
276295
| `tangle/`
277296
| Literate programming / tangling tool shared across the language ecosystem.
278297

README.adoc

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,26 @@ A multi-dialect experimental language family exploring different levels of abstr
9494

9595
Status: partially implemented.
9696

97+
---
98+
99+
=== KitchenSpeak (DSL)
100+
101+
An experimental, formally-verified orchestration *DSL* for the domestic
102+
kitchen, used as a teaching vehicle for advanced type theory (linearity,
103+
session/choreographic types, refinement types, effect systems, postulated
104+
oracles). Programs translate culinary expert intent into machine-executable
105+
appliance actions while a seven-type system keeps them physically and
106+
digitally safe.
107+
108+
Its invariant: every ingredient is consumed exactly once, every loop
109+
terminates on a wall-clock bound, and every physical step is witnessed by a
110+
local sensor. Development leads with proofs (Agda) per the language's
111+
`ROADMAP.adoc`.
112+
113+
Status: specification stable at v1.0; proof library commenced (Dough,
114+
Poached Egg), toolchain in progress. Maintained as the standalone
115+
`hyperpolymath/kitchenspeak` repository.
116+
97117
== Common Principles
98118

99119
Across these languages:

kitchenspeak/.gitignore

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
# SPDX-License-Identifier: MPL-2.0
2+
# RSR-compliant .gitignore
3+
4+
# OS & Editor
5+
.DS_Store
6+
Thumbs.db
7+
*.swp
8+
*.swo
9+
*~
10+
.idea/
11+
.vscode/
12+
13+
# Agda
14+
*.agdai
15+
/proofs/agda/_build/
16+
/_build/
17+
.agda-stash
18+
19+
# Build
20+
/target/
21+
/build/
22+
/dist/
23+
/out/
24+
25+
# OCaml / dune (future front end)
26+
/_opam/
27+
*.install
28+
*.merlin
29+
30+
# Rust (future LSP/DAP)
31+
# Cargo.lock # keep for binaries
32+
33+
# Secrets
34+
.env
35+
.env.*
36+
*.pem
37+
*.key
38+
secrets/
39+
40+
# Logs / temp
41+
*.log
42+
/logs/
43+
/tmp/
44+
*.tmp
45+
*.bak
46+
47+
# asdf version manager
48+
.tool-versions

kitchenspeak/CHANGELOG.adoc

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
// SPDX-License-Identifier: MPL-2.0
2+
= KitchenSpeak Changelog
3+
:icons: font
4+
5+
All notable changes to the KitchenSpeak DSL.
6+
7+
== Unreleased
8+
9+
=== Added
10+
11+
* Elevated KitchenSpeak from an in-tree directory of `nextgen-languages`
12+
to a standalone canonical repository (ADR 0002).
13+
* `ROADMAP.adoc` — proofs-first plan to reach AffineScript toolchain
14+
parity.
15+
* `proofs/agda/PoachedEgg.agda` — second core-library proof; lowers the
16+
poached-egg worked example and discharges the first Tropical
17+
refinement obligation (no-binary-overheat envelope) alongside Linear
18+
and Echo.
19+
* `proofs/Makefile` and `proofs/agda/kitchenspeak.agda-lib` — proof
20+
build harness (`make -C proofs`).
21+
* Standalone-repo scaffolding: `README.adoc`, `LICENSE`, `.gitignore`,
22+
this changelog.
23+
24+
== v1.0 — Specification (class deliverable)
25+
26+
=== Added
27+
28+
* `SPEC.adoc` — class v1.0 specification, reproduced verbatim.
29+
* `grammar.ebnf` — class grammar (Section A) plus three marked additive
30+
patches (Section B).
31+
* `COMMENTARY.adoc` — type-theoretic companion mapping the seven types
32+
onto standard foundations.
33+
* `examples/poached-egg.ks` — the minimal Linear + Tropical + Echo
34+
worked example.
35+
* `decisions/0001-proof-assistant.adoc` — ADR selecting Agda for v1.0,
36+
Lean 4 reserved as successor.
37+
* `proofs/agda/Dough.agda` — first proof (Linear + Dyadic +
38+
Choreographic + Echo).

0 commit comments

Comments
 (0)