Claude-skill-registry lea
Use when writing or modifying Lea code - pipe-oriented functional language with tree-walk interpreter
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/lea" ~/.claude/skills/majiayu000-claude-skill-registry-lea && rm -rf "$T"
manifest:
skills/data/lea/SKILL.mdtags
source content
Lea Language
Quick Start
let numbers = [1, 2, 3, 4, 5] let result = numbers /> filter((x) -> x > 2) /> map((x) -> x * x) /> reduce(0, (acc, x) -> acc + x) result /> print
Core Principles
- Pipes:
passes value as first arg; usevalue /> fn
placeholder to control positioninput - Functions:
(no fn keyword)let double = (x) -> x * 2 - Multi-statement bodies: Indentation-based or brace-delimited
{ } - Decorators: Trailing
etc. after function body#log #memo #time #retry(3) - Bindings:
immutable,let x = 10
mutablemaybe x = 0 - Records:
with member access{ name: "Max", age: 99 }record.field - Contexts:
+context Name = default
+provide Name value
attachments@Name
Builtins
- Math:
,sqrt
,abs
,floor
,ceil
,round
,minmax - Lists:
,length
,head
,tail
,push
,concat
,map
,filter
,reducerange - IO:
(returns first arg for chaining)print - Async:
— promise that resolves after msdelay(ms)
Running
npm run repl # Interactive REPL npm run lea file.lea # Run a file
Reference Files
- references/syntax.md - Full syntax reference
- references/architecture.md - Interpreter internals