plum

#treesitter#compiler#wasm

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

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


plum-std/Str.plum
5f2f962Peter John 2026-09-08T12:01:22+05:30
feat(lang): remove type/class entirely, enum is the only declaration form
ca5fd6fPeter John 2026-09-05T21:28:50+05:30
feat(number): add Number enum, migrate Int/Float methods, fix Float interpolation
29313cbPeter John 2026-09-05T13:28:55+05:30
refactor(stdlib): move libs/std to top-level plum-std, gate Int/Float/Str imports
73b5e55Peter John 2026-09-04T20:39:27+05:30
feat(plum): make Bool an ordinary import-gated enum, no hardcoded prelude
b7071c9Peter John 2026-09-04T19:42:10+05:30
refactor(libs/std): rename files to match their primary class name
73e4ff1Peter John 2026-09-04T19:31:38+05:30
feat(plum): make Str a real class instead of a special-cased primitive
ea9b8c1Peter John 2026-09-04T17:05:20+05:30
feat(plum): add generic Array[T] primitive, rewrite Map as a real hash table
a9a0147Peter John 2026-09-04T14:56:44+05:30
feat(plum): remove expect, unify on assert, Spock-style test tree output
bf629a2Peter John 2026-09-03T19:47:08+05:30
feat(plum): trait conformance checking, Stringable->ToStr, finish str.plum
4a2384cPeter John 2026-09-03T19:08:24+05:30
feat(plum): class init() constructors, bare-variant enum sugar, match guards
2ec05c8Peter John 2026-09-02T19:57:50+05:30
feat(libs/std): complete os/time/uuid, add Option/Result generics; fix several monomorphization/parser bugs
a43f3afPeter John 2026-08-29T17:12:19+05:30
improvements
a271f34Peter John 2026-08-27T19:20:16+05:30
improvements
58b01fcPeter John 2026-08-09T21:11:35+05:30
feat(libs/std): migrate remaining stdlib methods off <Receiver> syntax
0fe3528Peter John 2026-08-09T18:35:27+05:30
feat(libs/std,examples,test): migrate to `fun`-prefixed function syntax
141de54Peter John 2026-07-21T10:13:36+05:30
fix
fa31ba4pyrossh 2024-11-24T19:17:28+05:30
some changes
fd085d9pyrossh 2024-11-22T21:00:27+05:30
new rules
5f5d99dPeter John 2024-11-10T22:54:26+05:30
new syntax