-
-
Notifications
You must be signed in to change notification settings - Fork 0
Home
Pudu is a statically typed, expression-oriented programming language with explicit control, recoverable failure as values, exhaustive matching, traits, deterministic evaluation, and a standard library written in Pudu.
Status: pre-release. The current compiler checks and interprets programs. Native code generation, package management, and a stable compatibility promise are not implemented.
This wiki documents behavior present on the dev branch. The versioned engineering specification
remains in the repository wiki/.
The chapters follow the order in which the language rules depend on one another. New readers should begin with Getting Started, then continue through Parts I–IV. Experienced readers can use the Reference Index as the compact entry point.
- Getting Started
- Modules And Imports
- Values, Bindings, And Blocks
- Types And Inference
- Records, Sums, And Tuples
- Functions, Generics, And Traits
- Pattern Language
- Control Flow And Patterns
- Iteration And Loops
- Failure And Propagation
- Numbers And Collections
- Sets, Maps, And Sequences
- Keyed Structures
- Trees And Hierarchies
- Standard Library
- Output, Formatting, And Testing
- CLI, REPL, And Documentation
- Language Server And VS Code
- Diagnostics And Formatting
- Implementation Status
The Worked Programs appendix collects complete modules checked against the current compiler.
Pudu uses one compiler pipeline for checking, execution, the REPL, documentation, and editor answers. The interpreter is currently the only execution backend. Each chapter distinguishes a language rule from the present implementation boundary; planned native compilation and ownership work is not written as completed behavior.
- Modules And Imports
- Values, Bindings, And Blocks
- Types And Inference
- Records, Sums, And Tuples
- Functions Generics And Traits
- Pattern Language
- Control Flow And Patterns
- Iteration And Loops
- Failure And Propagation
- Numbers And Collections
- Sets Maps And Sequences
- Keyed Structures
- Trees And Hierarchies
- Standard Library
- Output Formatting And Testing
- Tasks And Scopes
- Compile-Time Evaluation
- Typed Macros
- References And Unsafe
- Worked Programs