Phase 9: Agents (send/await/deref) + core.async channels (chan, >!, <!, close!, go). All phases complete.

This commit is contained in:
2026-05-08 20:28:51 +03:00
parent 1f9d662ed9
commit 30fde68fed
6 changed files with 222 additions and 10 deletions
+2 -2
View File
@@ -83,8 +83,8 @@
| ID | Task | Status | Complexity | Files | Acceptance Criteria |
|---|---|---|---|---|---|
| T9.1 | Atoms (CAS) | ✅ | 🟡 | `lib/cljnim_runtime.nim` | `(def a (atom 0))`, `(swap! a inc)`, `(reset! a 42)`, `(deref a)`. Already implemented. |
| T9.2 | Agents | | 🟡 | `lib/cljnim_runtime.nim` | `(def ag (agent 0))`, `(send ag inc)`. Async execution. |
| T9.3 | core.async channels | | 🔴 | New: `lib/cljnim_async.nim` | `(chan)`, `(>! ch val)`, `(<! ch)`, `(go ...)`. Simplified version. |
| T9.2 | Agents | | 🟡 | `lib/cljnim_runtime.nim`, `src/eval.nim` | `(def a (agent 0))`, `(send a inc)`, `(deref a)`. Sync dispatch in interpreter, async-ready in runtime. |
| T9.3 | core.async channels | | 🔴 | New: `lib/cljnim_async.nim`, `src/eval.nim` | `(chan)`, `(chan n)`, `(>! ch val)`, `(<! ch)`, `(close! ch)`, `(go ...)`. Interpreter-first. |
---