Versions in this module Expand all Collapse all v1 v1.0.0 Aug 17, 2026 Changes in this version + func DumpAST(program *Program, modules map[string]*Module) string + func NodePos(node Node) source.SourcePos + func NodeType(node Node) string + func Recover() + func Traverse(node Node, pre, post func(n Node)) + func TraverseList[N Node](list []N, pre, post func(n Node)) + type Binding struct + Expression Expression + Name *Name + func (x *Binding) FirstPos() source.SourcePos + func (x *Binding) LastPos() source.SourcePos + type Expression interface + type Lambda struct + Cases []*LambdaCase + End source.SourcePos + Start source.SourcePos + func (x *Lambda) FirstPos() source.SourcePos + func (x *Lambda) LastPos() source.SourcePos + type LambdaCase struct + Expression Expression + Pattern Pattern + func (x *LambdaCase) FirstPos() source.SourcePos + func (x *LambdaCase) LastPos() source.SourcePos + type Let struct + Bindings []*Binding + Expression Expression + Start source.SourcePos + func (x *Let) FirstPos() source.SourcePos + func (x *Let) LastPos() source.SourcePos + type List struct + End source.SourcePos + Start source.SourcePos + SubExpressions []Expression + func (x *List) FirstPos() source.SourcePos + func (x *List) LastPos() source.SourcePos + type ListPattern struct + End source.SourcePos + Start source.SourcePos + SubPatterns []Pattern + func (x *ListPattern) FirstPos() source.SourcePos + func (x *ListPattern) LastPos() source.SourcePos + type Module struct + Imports []*Name + Name string + PublicBindings []*Binding + Start source.SourcePos + func ParseModule(tokens []Token) *Module + func (x *Module) FirstPos() source.SourcePos + func (x *Module) LastPos() source.SourcePos + type Name struct + Pos source.SourcePos + Value string + func (x *Name) FirstPos() source.SourcePos + func (x *Name) LastPos() source.SourcePos + type Node interface + FirstPos func() source.SourcePos + LastPos func() source.SourcePos + type NumberLiteral struct + Pos source.SourcePos + Value float64 + func (x *NumberLiteral) FirstPos() source.SourcePos + func (x *NumberLiteral) LastPos() source.SourcePos + type Operation struct + Operands []Expression + Operator string + func (x *Operation) FirstPos() source.SourcePos + func (x *Operation) LastPos() source.SourcePos + type Parser struct + Head int + PosStack []source.SourcePos + Tokens []Token + func (p *Parser) Accept(kind string) bool + func (p *Parser) Consume() Token + func (p *Parser) Expect(kind string) Token + func (p *Parser) Is(kind string) bool + func (p *Parser) ParseApplication() Expression + func (p *Parser) ParseAtomic(mandatory bool) Expression + func (p *Parser) ParseBinding() *Binding + func (p *Parser) ParseExpression() Expression + func (p *Parser) ParseLambdaCase() *LambdaCase + func (p *Parser) ParseLet() *Let + func (p *Parser) ParseModule() *Module + func (p *Parser) ParseName() *Name + func (p *Parser) ParseOperation() Expression + func (p *Parser) ParseProgram() *Program + func (p *Parser) ParseQualifiedName() Expression + func (p *Parser) Peek(offset int) Token + func (p *Parser) Pos() source.SourcePos + func (p *Parser) PrevPos() source.SourcePos + type Pattern interface + func ToPattern(expr Expression) Pattern + type Program struct + Body Expression + Imports []*Name + Start source.SourcePos + func ParseProgram(tokens []Token) *Program + func (x *Program) FirstPos() source.SourcePos + func (x *Program) LastPos() source.SourcePos + type QualifiedName struct + End source.SourcePos + Module string + Start source.SourcePos + Value string + func (x *QualifiedName) FirstPos() source.SourcePos + func (x *QualifiedName) LastPos() source.SourcePos + type Resolution struct + Errors int + Quals map[*QualifiedName]*Binding + Uses map[*Name]ResolutionFact + func Resolve(program *Program, modules map[string]*Module) *Resolution + type ResolutionFact struct + Def Node + Kind ResolveKind + Module *Module + type ResolveKind uint8 + const ResolveBuiltin + const ResolveLocal + const ResolveModule + type Resolver struct + type StringLiteral struct + Pos source.SourcePos + Value string + func (x *StringLiteral) FirstPos() source.SourcePos + func (x *StringLiteral) LastPos() source.SourcePos + type Token struct + Kind string + Pos source.SourcePos + Value string + func Lex(path string) []Token + func LexContent(path string, content string) []Token + func (t Token) Number() float64 + type TupleExpr struct + End source.SourcePos + Start source.SourcePos + SubExpressions []Expression + func (x *TupleExpr) FirstPos() source.SourcePos + func (x *TupleExpr) LastPos() source.SourcePos + type TuplePattern struct + End source.SourcePos + Start source.SourcePos + SubPatterns []Pattern + func (x *TuplePattern) FirstPos() source.SourcePos + func (x *TuplePattern) LastPos() source.SourcePos v0 v0.0.1-rc2 Aug 17, 2026 v0.0.1-rc1 Aug 17, 2026