Logo
  • Getting Started
  • Tutorial
  • Principles
  • Coding Conventions
  • Reference
    • Grammar
    • Items
    • Annotations
    • Types
    • Patterns
    • Expressions
    • Statements
    • Modules
    • Packages
    • Sockets
  • Repository
  • Discord
The Virdant Hardware Language
  • Reference
  • View page source

Reference

This is the Virdant language reference.

  • Grammar
    • Tokenization
    • Whitespace
    • Comments
    • Line Comments
    • Docstrings
    • Package Docstrings
    • Identifiers
    • Keywords
    • Literals
    • Dontcare
    • Hole Expressions
  • Items
    • Module Definitions
    • Struct Type Definitions
    • Union Type Definitions
    • Enum Type Definitions
    • Builtin Type Definitions
    • Socket Definitions
  • Annotations
    • Syntax
    • Where Annotations Appear
  • Types
    • Built-in Types
    • Struct Types
    • Union Types
    • Enum Types
    • Generics and Parameterized Types
    • Type Expressions
    • Kind System
  • Patterns
    • Enum Patterns
    • Union Patterns
    • Valid Patterns
    • Literal Patterns
    • Exhaustiveness
    • The else Arm
    • Patterns in Match Statements
  • Expressions
    • Grammar
    • Precedence and Associativity
    • Literals
    • Paths
    • Struct Construction
    • Field Projection
    • Indexing and Slicing
    • Union Construction
    • When Expressions
    • Match Expressions
    • Function Calls
    • Unary Operators
    • Binary Operators
    • Type Ascriptions
    • Dontcare
    • The ? Expression
  • Statements
    • Component Declarations
    • Driver Statements
    • Instance Declarations
    • Socket Instance Declarations
    • Conditional Statements
    • Match Statements
    • The Unused Statement
    • on Clause
    • it Block
  • Modules
    • Module Body
    • Ports
    • Wires
    • Registers
    • Assignments
    • Module Instances
    • Socket Instances
    • Match Statements
    • Unused Declarations
    • The it Identifier
    • On Clause
    • Driver Blocks
  • Packages
    • Package Structure
    • Import Statements
    • Fully-Qualified Names
    • Exporting Declarations
    • Package Dependency
    • Package-Level Documentation
  • Sockets
    • Socket Definitions
    • Socket Instances
    • Bidirectional Connections
    • Accessing Socket Ports
    • Sockets as Interfaces
Previous Next

© Copyright 2026.