⌂Bosatsu Documentation
0.0.0+1-b3b809f9*
  • Bosatsu Design Philosophy and Goals
  • Design Docs
  • Getting started (new repo)
  • Writing Bosatsu in 5 minutes
  • Language Guide
  • Recursion in Bosatsu
  • Generating JSON from Bosatsu Values
  • Debugging with lib eval
  • Inspecting Compiled Output with lib show
  • Compiling to Python
  • Core Alpha API
Bosatsu Documentation
⌂Bosatsu Documentation
0.0.0+1-b3b809f9*
  • Bosatsu Design Philosophy and Goals
  • Design Docs
  • Getting started (new repo)
  • Writing Bosatsu in 5 minutes
  • Language Guide
  • Recursion in Bosatsu
  • Generating JSON from Bosatsu Values
  • Debugging with lib eval
  • Inspecting Compiled Output with lib show
  • Compiling to Python
  • Core Alpha API
  • Bosatsu Documentation
  • Design Docs

Design Docs

This section collects implementation design documents for Bosatsu.

All design docs in this repository

Browse design docs

  • Compiler Leveraging Type Inhabitedness
  • Pattern Guards Design
  • Issue 1628: Pattern Value Reuse in TypedExprNormalization
  • Issue 1676: Default Values in Struct and Enum Constructors
  • Issue 356: Struct Update Syntax (..old)
  • Well-Typed Statement Generator Design
  • Quantifier Evidence on TypedExpr.Annotation
  • Issue 1718: Instantiate/Pushdown Unification Plan
  • Issue 1727: Tail-Loop Rewrite for Multi-Parameter-Group Functions
  • Issue 1732: Match-Site Struct/Tuple Scrutinee Elision in Matchless
  • Lexicographic recur Tuple Design
  • Minimal IO Functions for Basic Tools (core_alpha + Prog)
  • recur ... by int_decrease Design

Notes

  1. This page is the canonical index for design docs.
  2. Top-level documentation keeps only this single Design Docs entry so individual design docs do not clutter the main root sidebar list.
The source code for this page can be found here.

Next: Compiler Leveraging Type Inhabitedness

On this page:
  • Design Docs