plum

#treesitter#compiler#wasm

git clone https://git.pyrossh.dev/plum

A statically typed, imperative programming language inspired by rust, python


09c07b1 — Peter John 2026-11-06T13:37:40+05:30
plans: FBIP stage 1 owns
docs/plans/2026-11-06-fbip-stage1.md CHANGED
@@ -81,7 +81,7 @@ e.g. in a loop on a fresh array, `a = a.with(i, i * 2)` allocates nothing per st
81
81
  **Test code:** aliasing tests for arrays: alias then `with`, the original is unchanged; array in a struct field; array returned from a helper; `Array[Vec2]`. An `opsOf`-style wasm test that a proved site has no `array.copy`, and an unproved one does.
82
82
 
83
83
  ### T5 fip fun · Complexity 4 · Est. context 50k
84
- **Owns:** compiler/tooling/tree-sitter-plum/**, compiler/tooling/vscode-plum/**, compiler/core/src/*.rs, compiler/checker/src/*.rs, compiler/driver/src/*.rs, compiler/checker/tests/**/*.rs, compiler/core/tests/core/*.rs, tests/fbip/*.plum
84
+ **Owns:** compiler/tooling/tree-sitter-plum/**, compiler/tooling/vscode-plum/**, compiler/core/src/*.rs, compiler/checker/src/*.rs, compiler/driver/src/*.rs, compiler/checker/tests/**/*.rs, compiler/core/tests/core/*.rs, tests/fbip/*.plum, compiler/lsp/src/*.rs, compiler/wasm-codegen/src/*.rs
85
85
  **Components:** 2
86
86
  **LOC owned:** 150
87
87
  **Tests:** fast
@@ -92,7 +92,7 @@ e.g. `fip fun f(a: Array[Int]) -> Array[Int] = { b := a; a.with(0, 1) }` errors
92
92
  **Test code:** checker or driver tests for a passing case and each failure reason, with exact positions. Parser corpus for the keyword.
93
93
 
94
94
  ### T6 pilot and verdict · Complexity 4 · Est. context 45k
95
- **Owns:** tests/fbip/*.plum, docs/plans/2026-11-06-fbip.benchmark.md, docs/plans/2026-11-06-fbip-stage1.results.md
95
+ **Owns:** tests/fbip/*.plum, docs/plans/2026-11-06-fbip.benchmark.md, docs/plans/2026-11-06-fbip-stage1.results.md, compiler/lsp/src/completion.rs
96
96
  **Components:** 1
97
97
  **LOC owned:** 150
98
98
  **Tests:** slow