plum
git clone https://git.pyrossh.dev/plum
A statically typed, imperative programming language inspired by rust, python
plum-tooling/tree-sitter-plum/src/grammar.json
43e5250
— Peter John
2026-09-08T15:22:00+05:30
feat: add Groovy/Kotlin-style safe navigation operator (?.)
ec5336f
— Peter John
2026-09-08T13:13:12+05:30
feat(lang): add elvis `?:` operator
af1776b
— Peter John
2026-09-08T12:57:14+05:30
feat(lang): add postfix `?` error-propagation operator
5f2f962
— Peter John
2026-09-08T12:01:22+05:30
feat(lang): remove type/class entirely, enum is the only declaration form
13507fa
— Peter John
2026-09-07T15:28:19+05:30
feat(class/enum): mutable fields + Gleam-style spread update
984357b
— Peter John
2026-09-05T21:35:44+05:30
rename folders
287b97c
— Peter John
2026-09-04T21:23:50+05:30
feat(plum): reserve brackets for generics, enum variant payloads use parens
a9a0147
— Peter John
2026-09-04T14:56:44+05:30
feat(plum): remove expect, unify on assert, Spock-style test tree output
3a2119e
— Peter John
2026-09-04T14:06:41+05:30
feat(plum): named enum variant fields, self-methods on enums/classes, inline match formatting
4a2384c
— Peter John
2026-09-03T19:08:24+05:30
feat(plum): class init() constructors, bare-variant enum sugar, match guards
04d2270
— Peter John
2026-09-03T15:31:57+05:30
fix(tree-sitter-plum): a ternary as a closure's inline body now parses correctly
2ec05c8
— Peter John
2026-09-02T19:57:50+05:30
feat(libs/std): complete os/time/uuid, add Option/Result generics; fix several monomorphization/parser bugs
a43f3af
— Peter John
2026-08-29T17:12:19+05:30
improvements
a271f34
— Peter John
2026-08-27T19:20:16+05:30
improvements
6b5d9db
— Peter John
2026-08-09T21:01:06+05:30
feat(grammar): remove top-level <Receiver> method annotation syntax
8554271
— Peter John
2026-08-09T18:45:49+05:30
feat(grammar): add enum discriminant-value declarations
f047082
— Peter John
2026-08-09T18:37:28+05:30
feat(grammar): allow methods nested inside type/enum bodies
c06ddba
— Peter John
2026-08-09T18:35:20+05:30
feat(grammar): add `fun` keyword to function/method declarations
608d862
— Peter John
2026-07-24T12:38:06+05:30
feat(grammar): add subject-less guard-clause match arms
8f91d27
— Peter John
2026-07-24T11:03:43+05:30
feat(grammar): migrate generics to bracket syntax with uppercase letters
391c8e4
— Peter John
2026-07-23T18:41:41+05:30
feat(tree-sitter-plum): add field_target rule for obj.field = value assignment
141de54
— Peter John
2026-07-21T10:13:36+05:30
fix
4ba0db3
— Peter John
2026-07-20T22:22:15+05:30
feat(plum-wasm-codegen): compile closure literals and closure calls via a function table
906b92e
— Peter John
2026-07-20T21:29:37+05:30
feat(tree-sitter-plum): wire closure literals into expression position; add fn(...) type syntax
c273ea5
— Peter John
2026-07-20T16:01:25+05:30
fix(plum-checker): stop masking type errors in specializations; resolve generic enum instantiation
aeaba6f
— Peter John
2026-07-20T13:13:45+05:30
fix(tree-sitter-plum): allow a full expression as a body's trailing statement
96ec67f
— Peter John
2026-07-20T11:22:20+05:30
feat(tree-sitter-plum): allow positional variant-construction calls
660674c
— Peter John
2026-07-19T22:17:37+05:30
fix(tree-sitter-plum): remove Nil/try/except, allow inline match bodies
f502d22
— Peter John
2026-07-19T21:40:20+05:30
fix(tree-sitter-plum): fix match/generics/identifier/attribute grammar bugs
e9b4405
— pyrossh
2024-12-30T13:29:21+05:30
more stuff
0d8e2ab
— pyrossh
2024-12-18T21:48:44+05:30
add cargo pkg
58cc293
— pyrossh
2024-12-18T16:44:58+05:30
finish syntax
59e3de6
— pyrossh
2024-12-18T10:45:39+05:30
fix traits
1910cfc
— pyrossh
2024-12-18T10:34:12+05:30
fix tests
5b84889
— pyrossh
2024-12-18T10:24:09+05:30
fix assign
9e7927c
— pyrossh
2024-12-18T10:17:06+05:30
fix tests
4aca0b2
— pyrossh
2024-12-18T00:40:00+05:30
improve highlights
0d43379
— pyrossh
2024-12-17T15:08:34+05:30
improve string
c05610c
— pyrossh
2024-12-17T13:04:14+05:30
improve lang
419a88f
— pyrossh
2024-12-13T22:54:16+05:30
improce code
d322d05
— pyrossh
2024-12-12T13:31:25+05:30
add better syntax
5de508e
— pyrossh
2024-12-11T14:00:50+05:30
changes
fd085d9
— pyrossh
2024-11-22T21:00:27+05:30
new rules
f997bee
— pyrossh
2024-11-18T11:11:03+05:30
fix parser
1675049
— Peter John
2024-11-05T11:25:58+05:30
new syntax
2634d00
— Peter John
2024-08-30T13:19:01+05:30
improve grammar
efe15db
— Peter John
2024-08-25T15:50:44+05:30
improve grammar
fc68ba7
— Peter John
2024-08-17T22:38:01+05:30
assign works
5d12d71
— Peter John
2024-08-17T16:59:50+05:30
update tree-sitter and grammar
4bd2c1c
— Peter John
2024-08-15T21:36:27+05:30
add vscode/treesitter