Phase 4/7: nREPL, Tool-call format, Module caching
T4.5 nREPL: TCP-based JSON REPL (cljnim repl --tcp 9999)
T4.6 Tool-call: {"tool":"cljnim/eval","args":{"form":"..."}}
T7.3 Module caching: nimcache/ in project dir, skip regen if unchanged
Phase 4 now 100% complete. Phase 7: 3/4 tasks done.
This commit is contained in:
+5
-5
@@ -41,10 +41,10 @@
|
||||
- [x] File operations: `(file/ls "dir")`, `(file/exists? "path")`
|
||||
- [x] Git operations: `(git/status)`, `(git/commit "msg")`, `(git/push)`
|
||||
- [x] Git operations: `(git/diff)`, `(git/log)`
|
||||
- [ ] nREPL protocol compatibility
|
||||
- [ ] Tool-call format for AI framework integration
|
||||
- [x] nREPL protocol compatibility (JSON over TCP, `--tcp PORT`)
|
||||
- [x] Tool-call format for AI framework integration
|
||||
|
||||
## Phase 5: Persistent Data Structures
|
||||
## Phase 5: Persistent Data Structures ✅ (Complete)
|
||||
- [x] Persistent Vector (Hash Array Mapped Trie, 32-way branching)
|
||||
- [x] Persistent Map (HAMT) — `pmapAssoc`, `pmapDissoc`, `pmapGet` in O(log₃₂ n)
|
||||
- [x] Persistent Set — backed by HAMT map, `conj`/`disj`/`contains?`/`get`
|
||||
@@ -64,8 +64,8 @@
|
||||
## Phase 7: Project Compilation
|
||||
- [x] Compile entire projects (not just single files)
|
||||
- [x] Namespace system (`ns`, `(:require [lib :as alias])`)
|
||||
- [ ] Module caching for faster REPL startup
|
||||
- [ ] Dependency resolution
|
||||
- [x] Module caching for faster REPL startup
|
||||
- [ ] Dependency resolution (deps.edn, Git deps)
|
||||
|
||||
## Phase 8: Self-Hosted REPL
|
||||
- [ ] Compile forms in memory (no temp files)
|
||||
|
||||
Reference in New Issue
Block a user