1. Introduction
  2. Getting started
  3. Installation
  4. Editor Setup
  5. The Spade language
  6. Blinky
    1. Blinky (for software people)
    2. Blinky (for hardware people)
  7. Common Language Constructs
    1. Basic Expressions
    2. Spicy Expressions
    3. Variables
    4. Units
  8. Pipelines
    1. Pipelines (for software people)
    2. Pipelines (for hardware people)
  9. Simulation and Testing
  10. Ports and Wires
  11. Interfacing with Verilog
  12. Example projects
  13. Sample project: ws2128 RGB LED driver
    1. Creating a Project
    2. Led Protocol Overview
    3. Driver Interface
    4. State Machine
    5. Testing the State Machine
    6. Output generation
    7. Testing in hardware
  14. Language & Tool References
  15. Language Reference
    1. Items
      1. Units
      2. Type Declarations
    2. Statements
    3. Expressions
      1. Blocks
      2. If
      3. Match
      4. Instantiation
      5. Indexing
      6. Stage References
    4. Patterns
      1. Refutability
    5. Type system
      1. Primitive Types
      2. Generics
      3. Ports and Wires
    6. Dynamic Pipelines
    7. Binding
    8. Constructs by syntax
  16. Swim
    1. Installing Swim
    2. Using Swim
    3. Custom Subcommands
    4. Project Configuration
    5. Plugin Configuration
  17. Compiler Internals
    1. Naming
    2. Type Representation