-
Notifications
You must be signed in to change notification settings - Fork 0
Home
Mike Wright edited this page Aug 2, 2026
·
5 revisions
sw-MLPL is Software Wrighter's Machine Learning Programming Language: a Rust-first, APL-inspired array and tensor language for learning, experimentation, visualization, and small-model training. It combines a language, a browser playground, native command-line tools, accelerator backends, worked demos, tutorials, and an inspectable runtime.
Try the browser playground with no installation, or begin with Getting Started.
flowchart LR
Learn[Learn array and ML ideas] --> Language[MLPL language]
Explore[Explore data and models] --> Language
Train[Train and fine-tune models] --> Language
Language --> Browser[Browser and WASM]
Language --> CPU[Native CPU]
Language --> MLX[Apple GPU via MLX]
Language --> CUDA[NVIDIA GPU via CUDA]
Browser --> Visualize[Interactive visualizations]
CPU --> Visualize
MLX --> Visualize
CUDA --> Visualize
- Work with scalar, vector, matrix, and higher-rank arrays using concise array operations.
- Preserve meaning with named axes and typed ML value tags.
- Build models from linear, activation, normalization, embedding, attention, residual, LoRA, recurrent, and Engram pieces.
- Differentiate expressions, optimize parameters, and observe training with loss telemetry.
- Train tiny language models, classifiers, board policies, and supported LoRA models.
- Explore classical ML, dimensionality reduction, attention, image models, neural thickets, cellular automata, and other executable demos.
- Render charts, heatmaps, decision boundaries, model diagrams, 3-D scenes, and animated visualizations.
- Run locally in a terminal, entirely in a browser, or connect a browser or terminal client to a native compute server.
- Use CPU everywhere, MLX on Apple Silicon, and CUDA on supported Linux/NVIDIA hosts.
- Embed MLPL in Rust with the
mlpl!macro or lower supported programs to native Rust binaries.
| Goal | Start here |
|---|---|
| Try it without installing anything | Browser and WASM |
| Install and run scripts locally | Getting Started |
| Understand the language | Language Tour |
| See the full feature inventory | Capability Matrix |
| Find a representative project | Use Cases |
| Use native CPU execution | Native CPU |
| Use an Apple Silicon GPU | Apple Silicon and MLX |
| Use an NVIDIA GPU | NVIDIA and CUDA |
| Connect a browser to native compute | Server and Remote Execution |
| Understand the implementation | Architecture and Flows |
| Browse demos and teaching material | Demos and Learning Paths |
| Find source documents and code | Resources and Reference |
| See known stale source documentation | Documentation Errata |
Links such as Use Cases navigate within this wiki. Links such as the repository README and the language reference open Markdown or text files in the sw-mlpl source repository. This distinction is used throughout the wiki.