plum
git clone https://git.pyrossh.dev/plum
A statically typed, imperative programming language inspired by rust, python
523050a
— Peter John
2026-10-26T15:52:51+05:30
docs(plans): T9 addendum — *T sequence params and closure-free chaining
docs/plans/2026-10-26-zig-generics-and-numbers.md
CHANGED
|
@@ -228,3 +228,15 @@ Tests:
|
|
|
228
228
|
- `binder_arity_mismatch`.
|
|
229
229
|
|
|
230
230
|
Update the README iteration section and the formatter/highlight queries.
|
|
231
|
+
|
|
232
|
+
### T9 addendum (user-approved): closure-free chaining
|
|
233
|
+
|
|
234
|
+
- A `fun*` may take a `*T` sequence parameter. It accepts a List/Array/indexable value or a nested `fun*` call, and can never be stored, returned or captured, so nested adapters fuse into one loop.
|
|
235
|
+
- Std adapters: `take`, `skip`, `indexed`, `zip`, `reversed`, `chunks`, `stepBy`. All forms accept `*T` sources.
|
|
236
|
+
- The chain model:
|
|
237
|
+
- filter is `, if cond`;
|
|
238
|
+
- map is `, name := expr`;
|
|
239
|
+
- the terminal step is the outer form plus its body;
|
|
240
|
+
- body-less stages nest as sources;
|
|
241
|
+
- sort and group are separate statements.
|
|
242
|
+
- Docs: the README iteration section and `plum-examples/chains.plum`.
|