Dryad Programming Language

A multi-paradigm dynamically typed programming language inspired by JavaScript/TypeScript, designed for rapid infrastructure automation and ultra-lightweight native binaries. Through a unique hybrid execution architecture, Dryad compiles strictly typed code paths directly to ARM64/x86_64, while maintaining an instant-on interpreter for sandboxed scripting.

Read the Spec → · Error Codes →

Triple Execution Engine

Dryad is engineered with three execution strategies: a Tree-Walking Interpreter for rapid prototyping, a Stack-Based Bytecode VM for intermediate performance, and an AOT Native Compilation pipeline for maximum throughput. The interpreter is operational today; the VM and AOT backends are being built according to the published specification.

How the execution pipeline works →

Deterministic Safety

Predictable memory cleanup via automatic Reference Counting with no tracing GC, triggered the moment structures go out of scope or threads terminate, with bounds-checking support for low-level arrays.

No-Nonsense Deep Dive on the Blog →

Quick Start

The official installer detects your CPU architecture (x86_64 or ARM64) and instantly sets up the dryad CLI in your PATH:

$ curl -fsSL https://dryad.dev/install | sh
# Installing Dryad Toolkit v1.0.0... Ready.
$ dryad run scripts/main.dy
# Hello World! Running dynamically via AST Interpreter.
$ dryad build --aot scripts/main.dy -o output_bin
# Converted to IR, optimized with Constant Folding & native ELF output.

Project Status

Dryad is currently in active development — the language specification is stable, and the AST interpreter proof-of-concept is functional. The Bytecode VM and AOT compiler backends are under implementation as specified in the theoretical foundation.

What's ready: Lexer, parser, AST interpreter, type system, module resolution, native directive FFI, and the full error infrastructure.

In progress: Stack-based Bytecode VM, IR optimizer, AOT compiler pipeline (ARM64/x86_64), self-hosted standard library, and package manager.

Performance benchmarks will be published once the Bytecode VM and AOT backends reach their first stable release. Watch the blog for updates.

DESIGN PHILOSOPHY

"Clarity over performance: Legibility, syntactic consistency, and clean error messages with suggestions are unconditionally prioritized over obscure runtime optimizations."