Getting Started
Guide
Tools
Principles
Coding Conventions
Reference
Grammar
Items
Annotations
Platforms
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
Parameter Annotations
Platforms
The
platform
Item
The
for
Clause
Port Matching
Platform Defaults
The @noinitial Annotation
The Shipped ice40 Platform
The Shipped xilinx Platform
Building and Flashing
Adding a Platform
Types
Built-in Types
Built-in Modules
Struct Types
Union Types
Enum Types
Generics and Parameterized Types
Type Expressions
Kind System
Patterns
Enum Patterns
Enumerant Constructor 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
If Expressions
Let 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
Let Bindings
The Unused Statement
The Initial Statement
on Clause
it Block
Modules
Module Body
Ports
Wires
Registers
Memories
Tristate Nets
Assignments
Module Instances
Generic Modules
Socket Instances
Match Statements
Unused Declarations
The it Identifier
On Clause
Driver Blocks
The
dependson
List
Combinational Cycle Detection
Packages
Package Structure
Import Statements
Fully-Qualified Names
Public Declarations (
pub
)
Package Dependency
Package-Level Documentation
Sockets
Socket Definitions
Socket Instances
Bidirectional Connections
Accessing Socket Ports
Sockets as Interfaces
Builtin Sockets
The
dependson
List on Channels