An excerpt from the repository, fetched Nov 13, 2026.
Read the project’s introduction
ChrysaLisp
ChrysaLisp is a unique, 64-bit, MIMD operating system designed from the ground up for parallel and distributed computing. It's a complete, self-hosting environment featuring its own toolchain, a Virtual Processor (VP) for cross-platform portability, a responsive graphical user interface (GUI), a powerful command-line terminal with Unix-like pipes, an object-oriented assembler, extensive class libraries, a vpx compiler for efficient low-level coding, a unique Lisp interpreter, a powerful programers editor, and vector font engine. Machines that run it find each other and join into one system, keep their files in step, and share a distributed object store. Its shader language draws the same picture on a GPU, or with none on every CPU of the network.
Demonstration Videos
Explore ChrysaLisp in action on our YouTube channel: ChrysaLisp OS on YouTube
Featured videos include:
Installation, build process, and make test shorts.
Demonstrations of the GUI environment and applications.
Insights into the GUI compositor.
Key Features
Self-Hosting: Includes its own assembler, Lisp interpreter, and build tools (make).
Virtual Processor (VP): A 64-bit RISC-like target ensuring portability across x64, ARM64, RISC-V64 and LA64, with a VP64 emulator for unsupported platforms or bootstrapping. The VP of each function is made once and translated for each platform, and docs/vm/vp_vm.md is its spec, what every instruction does on every target. run_tui.sh -V runs the emulator in a mode that checks the VP as it goes.
Parallel & Distributed: Designed for MIMD architectures, supporting various network topologies simulated via shared memory links or linked directly across physical machines over native TCP networks.
Mesh Networking: Machines on one network that hold the same key find each other and join into one system, with nothing to configure. Each end of a link proves it has the key before the link carries anything. mesh says who is there. See docs/intro/mesh.md.
Sync and Rack: sync makes the files of another machine the same as this one's over those links, comparing a tree of hashes so that only what differs is sent, with no ssh or rsync. rack "tests -a" brings every machine level and runs a command on each of them. See docs/ai_digest/sync.md and docs/ai_digest/rack.md.
Storage (new, in development): A distributed object store. An object is cut into blocks named by their SHA-256, each block is kept by several machines chosen by a hash that every member works out the same, and members compare notes and copy what is missing, so a machine can leave and come back. (storage-stream path) gives any object as an ordinary seekable stream, a block at a time with the next few on their way, and a "gopher", a small query task, can be sent to travel to the blocks and come back with an answer. The Storage app shows it working, a block at a time if you like. See docs/ai_digest/storage_service.md.
Dynamic Binding & Loading: Functions are loaded and linked on demand, promoting efficient memory use and shared code among tasks.
Object-Oriented Assembler: A powerful class system underpins the entire OS, from low-level assembly to high-level Lisp.
vpx Compiler: Allows C-like expressions to be compiled into efficient VP code within Lisp.
Lisp Environment: A unique Lisp interpreter for scripting, development, and system tasks.
Graphical User Interface: A custom GUI system built using ChrysaLisp's own object model.
Shader Language and GPU: Shaders are written as s-expressions and type checked in Lisp. One source goes to GLSL, to Metal, to SPIR-V for Vulkan, to native VP code that needs no GPU, and to a Lisp lambda the others are checked against. The SDL3 host draws shaders and lit meshes on the GPU, through Metal on a Mac and Vulkan on a Raspberry Pi. See docs/ai_digest/shader_language.md and docs/intro/sdl3.md.
Parallel Rendering: With no GPU, a shader compiled to native code is drawn by the nodes of the network, a tile each. A canvas can keep its pixels in shared memory, and the Whiteboard has the nodes of a machine each draw a stripe of the same picture.
Whiteboard: A board of shapes, not pixels, for many pointers at once, with instruments such as a ruler and a protractor that a pen runs along. A board is a .cwb text file that loads anywhere a picture does, and can be drawn by a hand, a script or an AI with the cwb command. The diagrams in the documentation are boards. See docs/apps/whiteboard.md.
Media: The Films app plays MP4, MOV, MKV, WebM, AVI, MP3 and FLAC. The sound codecs are ChrysaLisp's own, AAC with SBR and PS, AC-3 and E-AC-3, MP3, FLAC and ADPCM, in lib/media/; the pictures, H.264, H.265, MPEG-4 Part 2 and Motion JPEG, are decoded by the host's hardware decoder. The Voice app makes calls between the machines of a mesh, each voice mixed on its own stream, and records notes and calls.
Cryptography: SHA-256, SHA-512, HMAC, HKDF, PBKDF2, ChaCha20 with Poly1305, AES with GCM, X25519, Ed25519, ECDSA and RSA signatures, and X.509 certificates, in lib/crypto/. See docs/ai_digest/crypto.md.
Network Stack: URL, JSON and HTTP/1.1 libraries in lib/net/. See docs/ai_digest/net_stack.md.
Command Terminal: A familiar pipe-style command-line interface.
Tests as a Cache: Nearly 8,000 assertions in 191 modules. tests runs only the modules that stand on what has changed, so the test of a change is as big as the change. See docs/ai_digest/test_cache.md.
Source Checking: check, lint, forward, imports and includes read the source and report faults the text alone can show, before anything is run.
Supported Platforms
ChrysaLisp currently runs as a hosted environment on:
macOS (x64, arm64)
Windows (64-bit x64)
Linux (x64, arm64, riscv64, la64)
Special support for Raspberry Pi (3/4, 64-bit OS) in framebuffer mode.
Future goals include bare-metal operation, UniKernel appliances, and a WebAssembly target.
Quick Start Guide
This guide is for users familiar with command-li
Read the full README on GitHub