Skip to content

Dodo 0.1.1

Choose a tag to compare

@Jotrorox Jotrorox released this 11 Sep 08:09
· 134 commits to main since this release

Dodo 0.1.1 improves language ergonomics, editor support, compiler distribution,
and documentation. The language specification remains version 0.1.

  • Organize the documentation into getting started, usage, language reference,
    and project sections, with focused installation, command-line, editor, and
    source-build guides.
  • Simplify the first-program tutorial and add a copyright and license footer
    throughout the documentation website.
  • Add dodo fmt with automatic migration to name-first declarations, bracket
    array literals, and explicit function::<Type>() generic calls.
  • Support inferred and annotated array literals, copy-only array repetition,
    immutable let bindings, value-producing blocks, integer ranges, checked
    subslices, and recursive patterns with guards and conditional bindings.
  • Add explicit copy patterns in shared collection iteration and leading-dot
    continuation for field and method chains.
  • Add dodo lsp / dodo --lsp with live diagnostics, ownership and type hovers,
    unsaved import checking, and directory-package checking.
  • Improve labeled ownership diagnostics for borrow origins, conflicting
    accesses, moves, live uses, and borrowed-return contracts.
  • Embed LLVM 22 and all code generation targets in the compiler; provide Linux
    release recipes with bundled support libraries and a fully static profile.
  • Fix fully static Ubuntu builds when LLVM reports absolute support-library
    paths, and provide the required static Z3 archive through a pinned build.
  • Publish the searchable documentation website with light and dark themes,
    keyboard navigation, and generated PDF and plain-text specification downloads.
  • Read the CLI help version from Cargo metadata so help, version output, and
    the language server identify the same compiler release.

The compiler still implements a subset of the language design. See the
implementation status and limits
for supported behavior and remaining work.

Install

Download dodo-0.1.1-x86_64-unknown-linux-gnu.tar.gz below for x86-64 Linux with glibc 2.39 or newer (Ubuntu 24.04). LLVM is embedded. Building or running native executables requires a C toolchain such as cc.

The archive includes the compiler, examples, documentation sources, and dependency license notices. Verify its checksum using the attached SHA256SUMS, then follow the installation guide and first-program guide. Other platforms can build from source.

Validation

276 Rust tests, Clippy, formatting, documentation build and internal-link checks, release linkage checks, and Ubuntu 24.04 runtime smoke tests.

All changes since v0.1.0